javascript - HammerJS 中手势的简单示例

标签 javascript hammer.js

我正在尝试运行简单的手势代码,例如在浏览器上点击滑动

<html>
<head>
</script src="https://hammerjs.github.io/dist/hammer.js">
</script>
<script>
    var myElement = document.getElementById('myElement');

    // create a simple instance
    // by default, it only adds horizontal recognizers
    var mc = new Hammer(myElement);

    // listen to events...
    mc.on("panleft panright tap press", function(ev) {
        myElement.textContent = ev.type + " gesture detected.";
    });
</script>


<style type="text/css">
#myElement {
    background: black;
    height: 300px;
    text-align: center;
    font: 30px/300px Helvetica, Arial, sans-serif;
}
</style>


</head>
<body>


    <div id="myElement"></div>

</body>
</html>

我正在尝试执行此代码,但显示错误 无法读取 null 的属性“addEventListener”

最佳答案

正如所写,JavaScript 在 DOM 准备好之前运行,并且找不到要附加的元素。试试这个:

<script>

  document.addEventListener("DOMContentLoaded", function(event) {

    var myElement = document.getElementById('myElement');

    // create a simple instance
    // by default, it only adds horizontal recognizers
    var mc = new Hammer(myElement);

    // listen to events...
    mc.on("panleft panright tap press", function(ev) {
        myElement.textContent = ev.type + " gesture detected.";
    });
  });
</script>  

您可以引用https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded

文本的默认颜色是黑色,因此您将无法阅读消息,除非您通过添加诸如 color:white; 之类的内容来调整 CSS。

<style type="text/css">
#myElement {
  background: black;
  height: 300px;
  text-align: center;
  font: 30px/300px Helvetica, Arial, sans-serif;
  color: white;
}
</style>

关于javascript - HammerJS 中手势的简单示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29484146/

相关文章:

javascript - 如何制作一个具有一处差异的数组副本?

javascript - 使用 jQuery 移动翻转开关更改文本颜色

javascript - Hammer JS 和历史

javascript - Hammer.js 事件优先级

javascript - 使用 Hammer.js 双指缩放

javascript - 在不影响文本的情况下向事件导航链接的边框底部添加边距

javascript - JS中搜索并返回一个json对象

javascript - 在 iPad 中创建水平滚动(使用 Hammer JS 库防止垂直滚动)

javascript - 为什么 hammer.js 滑动不适用于 iPhone

Javascript 字符串搜索问题