我使用以下代码。
var cursorXPos;
var cursorYPos;
$(document).mousemove( cursorLocation(evt) );
function cursorLocation (evt) {
cursorXPos = evt.pageX;
cursorYPos = evt.pageY;
}
但是这给了我一个错误。
未捕获的TypeError:无法读取未定义的属性
pageX
。
但是,如果我使用匿名函数,则会传递事件对象,一切正常。
$(document).mousemove( function (evt) {
cursorXPos = evt.pageX;
cursorYPos = evt.pageY;
});
答案 0 :(得分:3)
您需要将函数引用传递给mousemove
,不要调用它(通过添加()
)
$(document).mousemove( cursorLocation );
答案 1 :(得分:2)
绑定事件时,无法在函数中传递参数。您只需传递事件的名称,javascript就会为您处理参数。
var cursorXPos;
var cursorYPos;
$(document).mousemove( cursorLocation ); // <-- here
function cursorLocation (evt) {
cursorXPos = evt.pageX;
cursorYPos = evt.pageY;
}