javascript - JS区分iPhone上的点击和滚动

标签 javascript jquery ios

我正在尝试关闭侧边菜单 onclick。然而,touchstart 也将滚动检测为点击,touchend 也是如此。 如何只检测 iPhone 上的点击(而不是滚动)?

  $('#html').on("click touchstart",function(e) {
      var optionsmenue = $(".adminmenu_label");
      if(!optionsmenue.is(e.target) && optionsmenue.has(e.target).length === 0) {
        document.getElementById("Optionsmenu").style.width = "0%";
        document.getElementById("Optionsmenu").style.transition = "0.2s ease-out";
        document.getElementById("adblue").style.display = "block";
        document.getElementById("whatever").style.display = "block";  
        document.getElementById("not_related").style.display = "block";
        document.getElementById("still_not_related").style.display = "block"; 
        document.getElementById("still_still_not_related").style.width = "100%"; 
      }
    });

最佳答案

检测 iOS 并添加 cursor:pointer 对我有用,IOS 似乎有事件委托(delegate)问题。

var iOS = ["iPad","iPhone","iPod"].indexOf(navigator.userAgent) > -1;

if(iOS) {
   $('body').css({ cursor : 'pointer' });
}

$('#html').on("click",function(e) {
    // No need for touch start click will do the trick;
});

关于javascript - JS区分iPhone上的点击和滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48516800/

相关文章:

javascript - 按下时更改按钮的背景色

javascript - 如何读取从 javascript post 调用的 python 脚本中的数据

ios - 在新的 Firebase 中,如何在 xcode 中使用多个配置文件?

ios - 从 1080*1920 更改为 640*960 分辨率

javascript - 如何在 SIPML5 WebRTC 中配置 REFER 调用?

javascript - 有向无环图中所有 Node 的可达性计数

php - 使用 laravel 数据库查询中的 json 数据填充选择框

ios - 如何更改 Google Place Autocomplete 中的取消按钮文本和字体?

javascript - Jquery ui 自动完成错误不是函数

javascript - 我应该在 Node js 中使用 var 还是使用 es6 约定