JS touch事件挂件点击

时间:2016-09-30 05:34:08

标签: javascript events javascript-events

touchstart是要点击的吊坠吗?

如果是,mousedown是什么?如果不是那么click

mousedown = touchstart
click = ?
mouseup = touchend

mousedown = ?
click = touchstart
mouseup = touchend

移动设备上是否始终触发mousedown和类似事件?

1 个答案:

答案 0 :(得分:1)

实际上点击是mousedown - >继续关注元素 - > mouseup clickmouseup一起发送。

同样适用于touchstarttouchendclick会调度touchend

请看以下示例以使事情更清楚:

<html>
  <head>
  </head>
  <body>
    <button id="test">test</button>
    <script>
      document.getElementById("test").addEventListener("mousedown", () => {
        console.log("down");
      });
      document.getElementById("test").addEventListener("click", () => {
        console.log("click");
      });
      document.getElementById("test").addEventListener("mouseup", () => {
        console.log("up");
      });
    </script>
  </body>
</html>

您点击并按住test按钮,您将在控制台down中看到。现在您释放鼠标,您将看到clickup

如果您点击并按住,则在释放之前将指针移开,您既不会看到click也不会看到up

请注意,touchstarttouchend之间的较长时间会发送contextmenu(右键单击),而不只是click