删除锤子事件

时间:2013-03-15 08:26:05

标签: javascript hammer.js

我使用hammer.js库创建一个事件,如下所示:

Hammer(myElement).on("doubletap", function(evt){
            evt.preventDefault();
        });

如何删除注册事件?我还可以使用Jquery吗?

2 个答案:

答案 0 :(得分:16)

只是Hammer(myElement).off(eventName);

如果你想使用jQuery,那么语法是:

$(myElement).hammer().on(eventName, callback)

如果要为事件指定“命名空间”,则声明例如。

$(myElement).hammer().on("tap.namespace", callback);
$(myElement).hammer().on("tap.anotherNamespace", callback2);

这使得只能分离所需的事件,例如:

$(myElement).hammer().off("tap.anotherNamespace");

答案 1 :(得分:0)

hammer.js API文档中声明不会删除dom事件, 使用$(element).off()不能解决您的问题,一种解决方法是使用Hammer.js jQuery包装器,使用bind函数将它们的事件注册在元素上。使用取消绑定删除所有或特定事件。

$(element).hammer()。unbind();

$(element).hammer()。bind('swipeleft','swiperight',function(){});

包装器在这里:https://github.com/hammerjs/jquery.hammer.js/blob/master/jquery.hammer.js