2012-02-15 11 views
3

What's the best way to detect a 'touch screen' device using JavaScript? によれば、私はこの文はうまくも最新のChromeブラウザ(V17)に、trueまたはfalseを返すタッチスクリーン検出:クロム17

((!!('ontouchstart' in window) ? 1 : 0) == 1) 

を用いたタッチデバイスの検出を実現。ちょうど述べたように。 私のコードビットを美化するためには、小さな機能

function isTouchDevice() { 
return ((!!('ontouchstart' in window) ? 1 : 0) == 1); 
}; 

残念ながらこの機能は、誤って(上記statetedのように)インラインと呼ばれる場合や、文自体は、正常に動作するのに対し、クロム17にTRUEを返すには、この文を入れますコンソールから直接。

他のブラウザ(IE、FF)は間違った結果を返しません。

誰でも説明できますか?

+3

本当にブール式にそのような冗長性がある理由はありません。あなたが必要とするのは、ウィンドウ内で '' ontouchstart ''だけです。さて、IDがうまくいかない理由について:私は[Modernizrが何をしているか](http://modernizr.github.com/Modernizr/touch.html)をチェックします。 – Pointy

答えて

0

私はChrome 17で、私は間違っています。 (OS X 10.7.3)

関連する問題