使用事件对象调用 javascript 鼠标事件

Call javascript mouse event with event object

所以我希望能够使用 $().mousemove() 在 jquery 中触发我的 mousemove 函数,但我还希望能够将当前鼠标状态作为参数传递,所以我的mousemove 函数知道鼠标的 x 和 y 坐标。

我知道一个可能的解决方法是保存 x 和 y 坐标并创建一个直接使用这些坐标的函数,但我想知道是否有办法只获取当前鼠标事件。

示例:

$(document).mousemove(function(e) {
    var x = e.pageX;
    var y = e.pageY;
    // do stuff with x and y
});

function trigger_mousemove() {
    $(document).mousemove(/** here is where I want something to be able to put in */);
}

提前致谢!

使用闭包让您的整个代码访问由 mousemove 处理程序更新的变量:

var mouseX, mouseY;
$(document).mousemove(function(e) {
    mouseX = e.pageX;
    mouseY = e.pageY;
}).mouseover(); // call the handler immediately

// do something with mouseX and mouseY

来自用户 lonesomeday 的 cytation 如果您喜欢这个答案,请在下面的 link 中感谢他。 参考How to get mouse position in jQuery without mouse-events?