如何解决在 mousedown 事件中添加的 Mousemove 事件在鼠标不移动时保持触发
我正在以“mousedown”->“mousemove”->“mouseup”的形式处理一系列简单的鼠标事件侦听器。我想要做的是在 mousemove
事件触发时为 mouseup
和 mousedown
添加两个事件侦听器。
我的代码如下:
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 事件也会继续触发。我正在使用 Chrome。
解决方法
看来问题一定来自其他地方——可能是其他代码或您使用的鼠标。
我测试了您在 DevTools 控制台(Edge 和 Chrome 中)中包含的代码,并且当我按住鼠标并保持静止时,事件不会触发。
,所以我找到了罪魁祸首。我什至没想到那里看。我正在使用 AutoHotKey 在后台运行一个脚本,出于某种原因,它似乎与我的页面进行了交互。关闭它解决了问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。