Mikä on paras tapa havaita mobiililaite?

Onko olemassa vankka tapa havaita, käyttääkö käyttäjä mobiililaitetta jQueryssä vai ei? Jotain vastaavaa kuin CSS:n @media-attribuutti? Haluaisin ajaa eri skriptin, jos selain on kämmenlaitteessa.

JQueryn $.browser-funktio ei ole se, mitä etsin.

Se, mitä teet halutessasi havaita mobiililaitteen, on IMO hieman liian lähellä "selaimen haistelu" -konseptia. Olisi todennäköisesti paljon parempi tehdä jonkinlainen ominaisuuden tunnistus. Kirjastot, kuten http://www.modernizr.com/, voivat auttaa siinä.

Missä on esimerkiksi raja mobiililaitteen ja muun kuin mobiililaitteen välillä? Se hämärtyy päivä päivältä enemmän.

Kommentit (10)

Se ei ole jQuery, mutta löysin tämän: http://detectmobilebrowser.com/

Se tarjoaa skriptejä mobiiliselainten tunnistamiseen useilla kielillä, joista yksi on JavaScript. Se voi auttaa sinua siinä, mitä etsit.

Koska kuitenkin käytät jQueryä, sinun kannattaa olla tietoinen jQuery.support-kokoelmasta. Se'on kokoelma ominaisuuksia nykyisen selaimen kykyjen havaitsemiseen. Dokumentaatio on täällä: http://api.jquery.com/jQuery.support/

Koska en tiedä, mitä tarkalleen ottaen yrität saavuttaa, en tiedä, mikä näistä on hyödyllisin.

Kaikki tämä sanottuna, mielestäni paras vaihtoehto on joko ohjata tai kirjoittaa eri skripti tulosteeseen käyttämällä palvelinpuolen kieltä (jos se on mahdollista). Koska et todellakaan tiedä mobiiliselaimen x:n ominaisuuksia, havaitsemisen ja muutoslogiikan tekeminen palvelimen puolella olisi luotettavin menetelmä. Kaikki tämä on tietysti turhaa, jos et voi käyttää palvelinpuolen kieltä :)

Kommentit (9)

Jos et ole erityisen huolissasi pienistä näytöistä, voit käyttää leveyden ja korkeuden tunnistusta. Jos leveys jää alle tietyn koon, mobiilisivusto tulee näkyviin. Se ei ehkä ole täydellinen tapa, mutta se on luultavasti helpoin havaita useilla laitteilla. Saatat joutua käyttämään erityistä iPhone 4:ää varten (suuri resoluutio).

Kommentit (0)