on('click')和on('tapone')之间的区别

3
使用jQuery和jGestures创建网站时,发现一些设备(如iPad)不会响应“click”事件,而是响应“tapone”事件。
我将所有的“click”替换为“tapone”,在各种浏览器中测试后发现没有问题。这些浏览器包括Windows上的最新版本的IE、Firefox、Chrome和iPad 4上的Safari。
将所有实例的“on('click', ....”替换为“on('tapone', ...”有什么缺点?这会导致任何桌面浏览器出现问题吗?

通过在各种浏览器上进行一些测试,你似乎可以回答自己的问题。 - Brian Driscoll
我已经像我说的那样在各种浏览器中进行了测试,似乎没有任何问题,但仅仅因为似乎没有问题并不意味着没有问题。我想知道用tapone替换click是否是好的实践。 - user3416023
1个回答

2

click是浏览器原生事件。

tapone是由jGestures库触发的自定义事件,用于捕获单指轻击。(它还有taptwo等用于多点触控的轻击事件。)

如果您正在使用该库,请使用其事件。似乎在非触摸浏览器上,它会规范化为click,这就是为什么您看不到任何问题的原因。

来自文档

在每个本机touchstart、touchend、gesturestart和gestureend事件上,jgestures都会在事件元素上触发相应的自定义事件(jGestures.touchstart,jGestures.touchend,jGestures.gesturestart和jGestures.gestureend)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接