按下鼠标按钮时监视鼠标坐标

Monitoring mouse coordinates while mouse button is pressed

本文关键字:鼠标 监视 坐标 按钮      更新时间:2023-09-26

JS中有没有一种方法可以在移动鼠标并按住鼠标按钮时跟踪pageXpageY的变化?

原始HTML DOM Event对象具有button属性,但如果我尝试在mousemove上监视它,它总是返回零(与ctrlKey、shiftKey等不同,它会反映更改)。

我尝试了jQueryMousehold插件,它等待mousedown,设置间隔,反复调用自己,并在mouseup或mouseout上清除间隔。当您只需要按住鼠标时,这是很好的,而不考虑按住按钮时选择器内的坐标。但我需要一些东西来捕捉鼠标悬停期间的值。

您可以在mousedown上设置一些标志变量,然后在mouseup中取消设置
mousemove处理程序中,简单地检查这个变量。

您可以尝试在body上使用mousemove事件,而不是最初单击的元素。在mousedown处理程序中,设置一些全局变量,指定哪个元素是活动的,并设置一个全局布尔值来指示拖动。还要在body上设置mouseup处理程序。但是,请记住,如果这些事件由页面上的其他元素处理,并且它们停止冒泡,则此方法将失败。