mousedown事件中添加的mousemove事件在鼠标不移动时持续触发

esbemjvw  于 2021-09-13  发布在  Java
关注(0)|答案(2)|浏览(608)

我正在以“mousedown”->“mousemove”->“mouseup”的形式处理一个简单的鼠标事件侦听器序列。我想做的是为它添加两个事件侦听器 mousemovemouseupmousedown 事件火灾。
我的代码如下所示:

document.addEventListener("mousedown",stagesContainerGrabMouseDownHandler)

function stagesContainerGrabMouseDownHandler(ev){
      document.addEventListener("mousemove",stagesContainerGrabMouseMoveHandler);
        document.addEventListener("mouseup",stagesContainerGrabMouseUpHandler)
}

function stagesContainerGrabMouseMoveHandler(ev){
        console.log(12)
}

function stagesContainerGrabMouseUpHandler(ev){
    document.removeEventListener("mousemove",stagesContainerGrabMouseMoveHandler);
    document.removeEventListener("mouseup",stagesContainerGrabMouseUpHandler);
}

问题是,当我按住鼠标时,即使我的鼠标静止不动,mousemove事件也会持续触发。我用的是铬。

83qze16e

83qze16e1#

看来问题一定来自其他地方——可能是其他代码或您正在使用的鼠标。
我测试了您在devtools控制台中包含的代码(在edge和chrome中),当我按住鼠标并保持静止时,事件不会触发。

jucafojl

jucafojl2#

所以我找到了罪犯。我甚至没想到去看那里。我在后台用autohotkey运行脚本,出于某种原因,它似乎与我的页面交互。关掉它解决了这个问题。

相关问题