我最近升级到了hammer.js 2,我注意到的第一件事是“hold”已被“press”取代。

我的旧代码在事件委托(delegate)方面工作得很好,但切换到按下似乎只有当我把它放在特定元素上时才起作用。

注意:我通过jquery插件使用hammer.js

锤子.js 1

$(element).hammer().on("hold",callback);

工作良好
$(rootElement).hammer().on("hold",".elementSelector",callback);

工作良好

锤子.js 2


$(element).hammer().on("press",callback);

工作正常,而这
$(rootElement).hammer().on("press",".elementSelector",callback);

才不是。回调永远不会被触发。

最佳答案

在新版本中,锤子事件已被简化以提高速度。要重新启用事件委托(delegate),只需添加 domEvents:true 作为选项:

$(rootElement).hammer({domEvents:true}).on("press",".elementSelector",callback);

关于javascript - 长按(按住)jqueryhammer.js 2 和事件委托(delegate),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25134649/

10-11 02:19