javascript - hammer.js 对象没有方法 addEventListener

标签 javascript hammer.js

我收到错误: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's jQuery Plugin安装(GitHub)。

因此,您不能将 jQuery 对象传递给 Hammer() 函数,您的两个选择:

使用 jQuery 插件

将我上面链接的 jQuery 插件添加到您的项目中,然后调用:

$('#kaydir').Hammer(...)

没有 jQuery 插件

仅将元素传递到 Hammer() 而不是 jQuery 对象,使用 [0]:

Hammer(resim[0]).on(...)

或者改为更改您的 resim 变量以保存调用 JavaScript 的 getElementById 的结果。

var resim = document.getElementById('kaydir');
Hammer(resim).on(...)

关于javascript - hammer.js 对象没有方法 addEventListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28191732/

相关文章:

javascript - 尝试使用服务在组件之间传递数据

javascript - forEach(function(tag) 在 JavaScript 中的含义

javascript - 引用错误 : prettyPrint is not defined

javascript - hammer.js - 阻止拖动事件直到上一个事件结束

jquery - 使用 Hammer js 进行拖动和缩放

javascript - 常用函数的 jquery 原型(prototype)

javascript - 如何创建顶级 grunt 文件并将其导入位于子文件夹中的另一个 grunt 文件?

javascript - 新的 Hammer.js 手势无法像以前一样工作

javascript - 使用 Hammer.js 在 PDF.js 上缩放

javascript - hammer-time.min.js 包含未定义的函数 hasTouchNone