2

我刚开始学习javascript,所以我可以实现触摸手势,我正在使用hammer.js库,但即使是一段简单的代码似乎也不起作用,有谁知道我是否遗漏了一些明显的东西?

我正确地包含了hammer.js(已通过在浏览器中输入路径对其进行了测试)并且我已将此代码包含在头部...

<script type="text/javascript">
    var element = document.getElementById('tapdiv');
    var hammertime = Hammer(element).on("tap", function(event) {
    alert('hello!');
    });
</script>

和我的html...

<div id="tapdiv">
 <img src="files/tabdiv.jpg" />
</div>

编辑:我也在hammer.js的控制台中收到这个错误......

TypeError: el is null [中断此错误]

if(!css_props || !el.style) {

4

1 回答 1

8

看来您的 javascript 正在尝试访问 DOM 中尚不存在的对象——确保在 DOM 准备好后执行您的 javascript:

<script type="text/javascript">
window.addEventListener('load', function() { 
    var element = document.getElementById('tapdiv');
    var hammertime = Hammer(element).on("tap", function(event) {
        alert('hello!');
    })

}, false);
</script>
于 2013-03-01T17:00:31.270 回答