2012-09-28 8 views
5

So che molte librerie JavaScript dipendono da "onuchstart" per rilevare se si trova su un tablet o un desktop.Chrome 22 confonde tablet e desktop

Ecco un esempio di codice che sto parlando:

var hasTouch = ("ontouchstart" in window); 

Per ora, ho dovuto commentare tutto il codice di rilevamento tablet per farlo funzionare.

Quale sarebbe il modo migliore per rilevare un tablet o un desktop?

Grazie!

+0

Correlato: http://stackoverflow.com/questions/8764020/how-can-i-check-for-real-touch-support-on-a-browser – epascarello

+3

La soluzione accettata è esattamente ciò che è rotto. –

+0

Hai un modo per riprodurre questo? '" onuchstart "in window' restituisce' false' per me in Chrome 24 – WildlyInaccurate

risposta

3

per vedere se la sua una piattaforma mobile Ho usato questo

var iPadAgent = navigator.userAgent.match(/iPad/i) != null; 
var iPodAgent = navigator.userAgent.match(/iPhone/i) != null; 
var AndroidAgent = navigator.userAgent.match(/Android/i) != null; 
var webOSAgent = navigator.userAgent.match(/webOS/i) != null; 

var isMobile = iPadAgent || iPodAgent || AndroidAgent || webOSAgent; 

Funziona abbastanza bene.

+0

Beh ... c'è anche Blackberry, per esempio. Questo è esattamente ciò che non va con lo sniffing del browser. –

+0

Questa è una buona idea! Grazie per il suggerimento! –

Problemi correlati