2011-10-20 76 views

回答

0

好的在广泛搜索后发现了一些东西。 window.touch doesn't work on Android至少这是别人说的话。我无法证实,因为我没有那么运行Android

1

移动设备这是我做的,到目前为止,它一直很好:

var HAS_TOUCH = ('ontouchstart' in window); 
1

我使用:

if(window.MSPointerEvent){ 
    //you are on IE10 
}else if(window.PointerEvent){ 
    //you are on IE11 
}else if(window.TouchEvent){ 
    //android and safari 
}else{ 
    //don't have touch events 
} 

我在Android 2.3和4.4.2以及iOS 7.1上测试了这个。对于IE我使用了什么Microsoft recommended

使用TouchEvent只适用于触摸设备;这并不意味着移动设备。对于使用在userAgent正则表达式:

if(navigator.userAgent.match(/Android/i) || navigator.userAgent.match(/iPhone/i)){ 
    //you are on Android or iPhone 
} 

但也有很多其他的案件来对待,例如,Windows手机和黑莓手机,所以我建议使用detect mobile API

相关问题