我需要知道用户是否在我的JavaScript代码中使用了移动触摸设备以不注册任何悬停eventHandlers。由于我不想像这样使用userAgent嗅探:

isMobile = function() {
  return /iPhone|iPod|iPad|Android|BlackBerry/.test(navigator.userAgent);
};


我希望conditionizr给我类似conditionizr.isTouch的东西。我想到的解决方案是测试触摸类,如下所示:

isMobile = function() {
  return $('#conditionizr').hasClass('touch');
};


这是有效的,因为conditionizr将类touch添加到html

<html id="conditionizr" class=" chrome no-retina no-touch mac">


但是我想有一种更好的方法来访问设置吗?

最佳答案

Conditionizr v4版本的更新

新的Conditionizr API完全可以满足您上面的要求:

if (conditionizr.touch) {
    // touch
}


...以及.on()API等许多其他出色的增强功能:

conditionizr.on('chrome', function () {
    // callback for Chrome
});


以及更多!

http://conditionizr.com

09-20 00:50