Je reçois l'erreur: Uncaught TypeError: Object [object Object] has no method 'addEventListener' hammer.js:168
Mon code est comme ceci:
<script type="text/javascript" src="js/hammer.js"></script>
Fonctionnement sur appareil prêt:
var resim = $('#kaydir'); Hammer(resim).on('swipeleft', function(ev){ console.log('left: ', ev); });
Il semble que l'erreur soit dans hammer.js. Que devrais-je faire?
J'imagine que votre problème est que vous n'avez pas installé jQuery Plugin Hammer.js ( GitHub ).
Pour cette raison, vous ne pouvez pas passer un objet jQuery dans la fonction Hammer()
, vos deux options:
Ajoutez le plugin jQuery que j'ai lié ci-dessus à votre projet, puis appelez:
$('#kaydir').Hammer(...)
Passez uniquement l'élément dans Hammer()
et non l'objet jQuery, en utilisant [0]
:
Hammer(resim[0]).on(...)
Ou modifiez plutôt votre variable resim
pour contenir le résultat d'appeler getElementById
de JavaScript.
var resim = document.getElementById('kaydir'); Hammer(resim).on(...)
Si vous utilisez jQuery, vous devez utiliser la version jQuery Hammer et l'utiliser comme ça:
var resim = $("#kaydir"); resim.hammer().on("swipeleft", function(ev) { console.log('left: ', ev); });