pointerdown 与 onclick:有什么区别?

问题描述 投票:0回答:3

onpointerdown
onclick
事件处理程序有什么区别?

有任何实际差异吗?事件在 DOM 树上传播的方式不一样吗?是否有一些设备仅响应这些事件之一?

我最初以为只有

pointerdown
是在触摸设备或笔上触发的,但
onclick
似乎也会被触发。

javascript events dom-events
3个回答
15
投票
  1. 有什么实际差异吗?

是的,有。

pointerDown
实际上相当于
onMouseDown
,但主要区别在于
mouseDown
仅发送到
Element
,但
pointerDown
可以发送到
Document
Window
Element

  1. onpointerdown
    onclick
    事件处理程序有什么区别?
  • pointerDown
    可以捕获右/左/中点击。

  • onClick
    仅捕获左键单击。

实例:

这个例子会更清楚。

https://codepen.io/nawafscript/pen/WNEyRyO


8
投票

添加到 Nawaf 答案: 事件处理程序被触发的时间点也不同(至少在使用鼠标时)。

  • onPointerDown 当按下鼠标按钮时触发
  • onClick 等待按下并释放鼠标按钮。

0
投票

根据我在 Android 项目上的经验,我发现使用 PointerDown 比使用 PointerClick 更快。

对于那些处理按钮事件触发器并优先考虑快速执行的人来说,PointerDown事件是我推荐的方法,也是更快的方法。

© www.soinside.com 2019 - 2024. All rights reserved.