我使用hammer.js库创建了一个事件,是这样的。
Hammer(myElement).on("doubletap", function(evt){
evt.preventDefault();
});
然后我如何删除注册的事件?我也可以使用Jquery吗?
这很简单 Hammer(myElement).off(eventName);
如果你想使用jQuery,那么语法是。
$(myElement).hammer().on(eventName, callback)
如果你想为事件指定 "命名空间",那么你声明eg.
$(myElement).hammer().on("tap.namespace", callback);
$(myElement).hammer().on("tap.anotherNamespace", callback2);
这样就可以只分离出所需的事件,比如说:"我想用jQuery",那么语法是:如果你想为事件指定 "命名空间",那么你就声明eg.js。
$(myElement).hammer().off("tap.anotherNamespace");
在hammer.js API的文档中,说明它不会删除dom事件,使用$( element).off()不能解决你的问题,一个变通的办法是使用hammer.js的jquery包装器,它们的事件是使用绑定函数注册在元素上的。使用unbind来删除所有或特定的事件。
$(Element).hammer().unbind()。
$(Element).hammer().bind('swipeleft', 'swiperight', function(){});
包装器在这里。https:/github.comhammerjsjquery.hammer.jssblobmasterjquery.hammer.js。