什么时候使用touchmove vs mousemove?

Sol*_*man 24 javascript html5 mouseevent mousemove touchmove

我建立了一个网络手机游戏,它运行在浏览器(PC/Mobile)上.

我是否需要使用touchmove?

如何像mousemove事件一样运行touchmove事件?

Kon*_*nev 41

对于桌面和触摸之间的奇偶校验,您有以下等价物:

mousedown === touchstart
mousemove === touchmove
mouseup === touchend
Run Code Online (Sandbox Code Playgroud)

因此,如果您处理mousedown,mousemove和mouseup,那么您不需要处理触摸下的相应等效事件.应该执行相同的处理程序.

  • 没错,但是:<br/>如果添加触摸事件,它将不会像鼠标事件那样工作。<br/> 我们为触摸手机做的东西不能在PC上运行。 (3认同)
  • 应该是(Mousemove &&(MousedownHasFired && MouseupHasNotYetBeFired))=== TouchMove? (3认同)
  • 最后一段似乎有点过于简单化了。我已经实现了“mousedown”+“mousemove”+“mouseup”,但是当我在触摸设备上使用我的应用程序时,它们都没有触发。这可能是 (1) 特定于浏览器的,(2) 由于 React 中的合成事件处理程序行为,或者 (3) 某些 CSS 属性的结果,例如 [`touch-action`](https://developer. mozilla.org/en-US/docs/Web/CSS/touch-action)。如果能澄清本声明在何种情况下适用,我们将不胜感激。 (3认同)
  • 这是不正确的,mousemove〜= touchmove使用mousemove时,它采用了悬停的元素,但是使用touchmove时,它采用了第一个被触摸的元素。 (2认同)