javascript - 用于检测仅触摸设备的 jQuery 解决方案?

标签 javascript jquery ios css touch

我在我的网站上设计了一个图片库,在鼠标滑过它们之前不会显示下一个/上一个箭头 .next:hover{display: block} 这很好,但是网站是流畅的,我根本不认为悬停(鼠标悬停)在触摸屏上不起作用!我不想让箭头一直显示,除非设备是触摸屏,例如 ipad!

检测设备是否仅触摸的最佳方法是什么,如果是,则更改显示:无以自动显示 block 。有没有一种 jQuery 方法可以做到这一点?

我希望这是有道理的,我用谷歌搜索并搜索了 S.O.但无法找到直接答案。再加上我在 jQuery 方面有点(轻描淡写)新手!

谢谢你的帮助

最佳答案

我做了这样的事情,当我测试它时,点击计数器也会触发触摸事件。

// Detect touchscreen only
var touchscreenonly = true;
var moves = 0;
var clicks = 0;
$("body").mousemove(function() { 
    moves++;
    if (moves > clicks + 1){
        touchscreenonly = false;
        // now unbind these functions if you like
        $(this).unbind("mousemove").unbind("click");
        console.log('mouse moved, this is not a touch-only device');
    }
}).click(function(){ 
    clicks++;
});

关于javascript - 用于检测仅触摸设备的 jQuery 解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23100824/

相关文章:

javascript - 将笔划数据转换为 SCG Ink 格式

javascript - 将参数从 jsonresult 传递到 actionresult

ios - 我们可以使用现有的支付流程 - 封装在 Apple App Store 的 App Wrapper 中吗?

ios - 如何快速将灰度图像转换为二值图像?

javascript - IE 调试器期望 ";"为什么?

javascript - JS中的日期函数,与设置的日期进行比较不起作用

php - 写入 mysql $_POST ["value"] + 某些文本不起作用

javascript - 如何在 Django 中处理 AJAX POST 请求

javascript - 在其任何子页面上突出显示标题菜单项

iphone - @""字符串类型并释放你不拥有的对象问题