エラーが発生しました:Uncaught TypeError: Object [object Object] has no method 'addEventListener' hammer.js:168
私のコードは次のようなものです:
<script type="text/javascript" src="js/hammer.js"></script>
デバイスレディ機能の場合:
var resim = $('#kaydir');
Hammer(resim).on('swipeleft', function(ev){
console.log('left: ', ev);
});
エラーはhammer.jsにあるようです。私は何をすべきか?
あなたの問題は、 Hammer.jsのjQueryプラグイン がインストールされていないことだと思います( GitHub )。
このため、jQueryオブジェクトをHammer()
関数に渡すことはできません。2つのオプションがあります。
上記でリンクしたjQueryプラグインをプロジェクトに追加してから、次のコマンドを呼び出します。
_$('#kaydir').Hammer(...)
_
_[0]
_を使用して、要素のみをHammer()
に渡し、jQueryオブジェクトは渡しません。
_Hammer(resim[0]).on(...)
_
または、代わりにresim
変数を変更して、JavaScriptのgetElementById
を呼び出した結果を保持します。
_var resim = document.getElementById('kaydir');
Hammer(resim).on(...)
_
JQueryを使用している場合は、 jQuery Hammer version を使用して、次のように使用する必要があります。
var resim = $("#kaydir");
resim.hammer().on("swipeleft", function(ev) {
console.log('left: ', ev);
});