JavaScript中没有原生鼠标长按事件,但可以通过以下方法模拟实现:

  1. 使用setTimeout()函数设置一个定时器,在一定时间后触发长按事件。

  2. 监听鼠标按下事件和鼠标松开事件,当鼠标按下时启动定时器,在鼠标松开时清除定时器。

以下是示例代码:

let timer = null;

// 监听鼠标按下事件
document.addEventListener('mousedown', function(event) {
  // 按下鼠标左键
  if (event.button === 0) {
    // 设置定时器,在500毫秒后触发长按事件
    timer = setTimeout(function() {
      console.log('鼠标长按事件触发');
    }, 500);
  }
});

// 监听鼠标松开事件
document.addEventListener('mouseup', function(event) {
  // 松开鼠标左键
  if (event.button === 0) {
    // 清除定时器
    clearTimeout(timer);
  }
});

注意:以上代码仅适用于鼠标左键长按事件,如果需要监听右键长按事件,需要将鼠标按下事件和鼠标松开事件的event.button改为2。

JavaScript模拟实现鼠标长按事件

原文地址: https://www.cveoy.top/t/topic/mN0D 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录