触发焦点/模糊事件时获取鼠标位置? – Javascript / jQuery

我正在使用jquery来捕捉一个事件:

$('input').focus(function(e){ console.log( e.pageX, e.pageY ); }); 

这似乎不起作用……有关获得鼠标位置的其他方法的任何想法?


帮助会很棒,谢谢:)

您只能使用鼠标事件获取鼠标坐标。 如果要捕获鼠标的位置,可以使用全局mousemove事件侦听器,并将坐标存储在一组变量中,稍后可以通过focus函数访问这些变量。 例:

 var pageX, pageY; //Declare these globally $(window).mousemove(function(e){ pagex = e.pageX; pageY = e.pageY; }); $('input').focus(function(){ console.log(pageX, pageY); // These variables have been defined by the global // mousemove event }); 

如果你想要获得相对于元素的位置,请尝试这样的事情:

 $("input").focus(function(e){ var relativeX = e.pageX - this.offsetLeft; var relativeY = e.pageY - this.offsetTop; });