次のようなhammer.jsライブラリを使用してイベントを作成します。
Hammer(myElement).on("doubletap", function(evt){
evt.preventDefault();
});
登録されたイベントを削除するにはどうすればよいですか? Jqueryも使えますか?
次のようなhammer.jsライブラリを使用してイベントを作成します。
Hammer(myElement).on("doubletap", function(evt){
evt.preventDefault();
});
登録されたイベントを削除するにはどうすればよいですか? Jqueryも使えますか?
それは単に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");
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