如何使用 jQuery 在 iPad 上避免“双重触摸”?

Posted

技术标签:

【中文标题】如何使用 jQuery 在 iPad 上避免“双重触摸”?【英文标题】:How to avoid "double touch" on an iPad using jQuery? 【发布时间】:2015-03-24 20:16:28 【问题描述】:

我有一个按钮,按下该按钮会将您带到页面顶部并突出显示搜索输入。它工作正常,除了 iPad 用户必须单击两次才能强制它工作。

这与识别触摸事件无关,而是确保在第一次尝试时触发触摸事件。

如何避免 iPad 上的“双击”?

  $('.my-button').click(function()  
      $("html, body").animate( scrollTop: 0 , 500);
      $('.search').addClass('highlighted'); 
  );

【问题讨论】:

How to recognize touch events using jQuery in Safari for iPad? Is it possible?的可能重复 【参考方案1】:
    $('.my-button').bind("click",function()  
        $(this).unbind(); 
        $("html, body").animate( scrollTop: 0 , 500); 
        $('.search').addClass('highlighted');
        $(this).bind();
    );

jquery bind 确实将处理程序附加到特定元素的事件,因此,无论何时绑定单击事件,它都不适用于双击,因为您可以单独绑定双击事件。因此,当您在第一次单击后在这种情况下单击双击时,它将取消绑定单击事件,以便在执行功能期间单击事件不会重复,并在您完成所有功能后再次绑定它。取消绑定删除先前附加的事件处理程序从元素。更多请查看bind 和unbind

【讨论】:

【参考方案2】:

你尝试过 'tap' jQuery 事件吗?

$('.my-button').on('tap', function()  
   $("html, body").animate( scrollTop: 0 , 500);
   $('.search').addClass('highlighted'); 
);

【讨论】:

以上是关于如何使用 jQuery 在 iPad 上避免“双重触摸”?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iPad 上通过滚动使工作 jquery “滑动”?

使用文档 ID 上传存储文件并传递 DownloadURL 时如何避免双重 Cloud Firestore 写入

重新连接后如何避免双重连接关闭?

如何防止使用 jQuery 或 Javascript 进行双重提交?

paypal如何避免PDT数据的双重回复

如何避免多线程在Oracle中进行双重插入