防止触摸设备上的鼠标移动事件

时间:2018-12-28 20:43:33

标签: javascript events

我正在听mousemove事件,以使按钮基于鼠标位置具有很好的效果。但是,在移动设备上,如果我触摸按钮,则会触发该事件,并使按钮跳转到该位置。我宁愿让按钮在触摸操作时忽略该事件,但仍在努力了解如何实现此目的?

// The function is just a helper of mine (it ads addEventListener to the matched events
createEventListener('.hoverable', 'mousemove', function(e) {
  // stripped out some calculations for simplicity reasons
  const deltaX = 50;
  const deltaY = 50;

  const transformString = `translate3d(${deltaX}px, ${deltaY}px, 0)`;

  this.style.mozTransform = transformString;
  this.style.webkitTransform = transformString;
  this.style.transform = transformString;
});

1 个答案:

答案 0 :(得分:0)

您可以在元素中添加CSS样式:触摸操作。

if (env('APP_DEBUG')) {
    $app->register(Barryvdh\Debugbar\LumenServiceProvider::class);
}

或者添加/删除事件并取消该事件的操作:

因此触发事件的顺序为:1)touchstart 2)touchmove 3)touchend 4)mousemove 5)mousedown 6)mouseup 7)单击。

也许是这样的:

style="touch-action: none;"