如何将Hammer.js插件与JavaScript结合使用?
我将hammer.js插件库与JavaScript一起使用,但它给我带来了一个错误,即如何将Hammer.js插件与JavaScript结合使用?,javascript,hammer.js,Javascript,Hammer.js,我将hammer.js插件库与JavaScript一起使用,但它给我带来了一个错误,即target.addEventListener不是hammer.js文件中的函数。我试着上网,但找不到任何适合我的东西。这是我的密码: 我的模板文件: <div class="class_name"> <img src="" class="img_test" /> </div> 由于某些原因,我没有使用这个插件的CDN版本,而是在本地机器上创建了不同的文件,并从GitHu
target.addEventListener不是hammer.js文件中的函数。我试着上网,但找不到任何适合我的东西。这是我的密码:
我的模板文件:
<div class="class_name">
<img src="" class="img_test" />
</div>
由于某些原因,我没有使用这个插件的CDN版本,而是在本地机器上创建了不同的文件,并从GitHub复制了hammer.js文件的代码
当我运行上面的代码时,它给出了addEventListener
错误。我到处找,但找不到任何解决办法,所以,我不知道我做错了什么
我正在使用最新的Google Chrome浏览器。我使用了。每个功能和jQuery都可以正常工作。
解决方案:
$('element').each(function(){
var mc = new Hammer(this)
mc.on('tap press', function(e) {
console.log('type: ', e.type)
})
})
当然document.getElementByClassName
是不正确的,但是假设您的意思是document.getElementsByClassName
,(注意复数“元素”),那么问题是,即使该类只有一个元素,它也会返回一个数组
因此var-hammer=new-hammer(ele[0])
应该可以解决这个问题。
如果这个类中有多个元素,那么就必须像jQuery一样在循环中遍历它们
$('element').each(function(){
var mc = new Hammer(this)
mc.on('tap press', function(e) {
console.log('type: ', e.type)
})
})