所以,我制作了一个简单的函数来获取页面上的鼠标位置。我想让它更简单,这样我就可以将变量传递给另一个函数。现在,我有这个:
$(document).on('mousemove', world, function(e){
var loc = function(){
this.x = function(){
return e.pageX - $(world).offset().left;
}
this.y = function(){
return (e.pageY - $(world).offset().top)*(-1);
}
}
console.log(loc.x, loc.y)
});
console.log 仅返回未定义。有没有办法在全局范围内执行此操作,以便我可以使用诸如 loc.x 之类的变量传递到函数中?
最佳答案
您需要在应用程序范围内创建一个对象。 (将其放在全局级别可能会导致命名空间冲突。)
var loc = {
x: 0,
y: 0
};
然后继续在事件中重新分配对象的属性,在本例中是当您移动鼠标以跟踪鼠标位置时。
$(document).on('mousemove', function (e) {
loc.x = e.pageX;
loc.y = e.pageY;
console.log(loc.x, loc.y);
});
关于javascript - jQuery 如何使用变量返回鼠标位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25335990/