javascript - 使用 javascript/jQuery 将触摸事件应用于每个点击事件

标签 javascript jquery touch dom-events user-experience

网站上的大多数事件都是点击事件。然而,移动浏览器上启动点击事件的 300ms 延迟显然是不受欢迎的:https://developers.google.com/mobile/articles/fast_buttons?hl=de-DE

读完上面的文章后,我开始想知道是否可以实现某种全局适用的代码,每次触摸/单击可点击的按钮、链接等时都会调用触摸事件。我们的目标是消除这 300 毫秒的延迟,让网站感觉更像是一个 native 应用程序。

从 UI/UX 的 Angular 来看,这段代码片段似乎非常有值(value),所以只是想知道人们对此的想法或他们提出的解决方案。

最佳答案

那篇文章说 clicktouchend 之后 300 毫秒发生,因此您需要执行与您要求相反的操作:

$(document).bind('touchend', function(e) {
    $(e.target).trigger('click');
});

这将从任何向上冒泡到文档级别的触摸事件的目标触发单击事件。这不是一个特别高效的解决方案,但作为一种大锤方法,它应该可以完成这项工作。

关于javascript - 使用 javascript/jQuery 将触摸事件应用于每个点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11275491/

相关文章:

javascript - 使用 AJAX 读取简单的文本文件。打开函数时出现访问被拒绝错误

php - Ajax 表单 : Wrong value sent back

javascript - 适用于不同浏览器和设备的鼠标和触摸事件

c# - Android 上的屏幕触摸模拟

javascript - "Single-page"JS 网站和 SEO

javascript - VueJS 2 : Catch event of direct child component

javascript - 输入上的 keyup 事件不起作用

javascript - 如何使用“添加新”按钮在 w2ui 网格中添加新项目?

javascript - 如何在html中使用jquery打印表单值

ios - iOS 上的按钮未在 touchUpInside 上发送事件