我相信 javascript 中有一个名为 event
的对象,我在一些不是我编写的代码中看到它,看起来像这样:
event.x + document.body.scrollLeft;
我无法找到更多信息,此外,该对象在 Firefox 中未定义。它在所有其他浏览器中运行良好。谁能为我提供更多信息?具体来说,如何在 Firefox 中访问该对象?
最佳答案
Official W3c reccomendation
clientX
和 clientY
是您正在寻找的官方事件属性处理程序。尽管您可能也想考虑 screenX
和 screenY
。
说明
event.x
和 event.y
,它们是什么?
首先,x
和 y
属性并非出现在所有事件中。它与触发的事件相关。
这是一个例子:
document.body.onclick = function(){console.log(window.event.x)};
如果您在浏览器控制台中粘贴并执行该代码,每次您单击
时,它都会记录光标的x
位置。
虽然看一下这个例子:
document.body.onkeyup = function(){console.log(window.event.x)};
每次您从键盘上释放一个键时,控制台都会记录 undefined
,因为 onkeyup()
事件不保存 x 的任何值
和 y
属性。
关于javascript - Javascript 中的事件对象,查找信息时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17601272/