我使用hammer.js库创建了一个事件,如下所示:
Hammer(myElement).on("doubletap", function(evt){
evt.preventDefault();
});
然后如何删除已注册的事件?我也可以使用Jquery吗?
发布于 2013-03-15 08:30:24
这就是简单的Hammer(myElement).off(eventName);
如果要使用jQuery,则语法为:
$(myElement).hammer().on(eventName, callback)
如果你想为事件指定"namespace“,那么你可以声明。
$(myElement).hammer().on("tap.namespace", callback);
$(myElement).hammer().on("tap.anotherNamespace", callback2);
这使得只分离所需的事件成为可能,例如:
$(myElement).hammer().off("tap.anotherNamespace");
发布于 2020-05-02 15:16:20
在function的文档中,声明它不会删除dom事件,使用$( hammer.js ).off()不会解决您的问题,解决方法是使用hammer.js jquery,它们的事件是使用绑定函数在元素上注册的。使用unbind可删除所有事件或特定事件。
$(element).hammer().unbind();
$(element).hammer().bind('swipeleft','swiperight',function(){});
包装器在这里:https://github.com/hammerjs/jquery.hammer.js/blob/master/jquery.hammer.js
https://stackoverflow.com/questions/15427715
复制相似问题