我正在使用 Google Closure javascript 库制作拖放应用程序。
如何在拖动事件中检测鼠标的当前位置?
var dragOverCallBack = function (e) {
console.log(e.somehowGetMouseXPosition());
}
我尝试过e.clientX
但e.pageX
无济于事(两者都未定义)。
我正在使用 Google Closure javascript 库制作拖放应用程序。
如何在拖动事件中检测鼠标的当前位置?
var dragOverCallBack = function (e) {
console.log(e.somehowGetMouseXPosition());
}
我尝试过e.clientX
但e.pageX
无济于事(两者都未定义)。
我不确定为什么 e.clientX 和 e.pageX 将是未定义的,除非 e 被作为未定义传递,这意味着您的回调设置不正确。我会尝试在您的回调中运行运行 console.debug(e) 并在 chrome 的开发人员工具控制台中查看该对象。它可能会提供对传递给您的事件对象的一些见解。
除了 e.clientX 和 e.pageX 之外,还有各种其他选项可以为不同的用途提供鼠标坐标(e.offsetX、e.screenX 等),本文很好地介绍了这些不同的坐标。你可以尝试其中的一些,看看你能不能得到任何东西。
更好的方法是尝试控制您的全局对象,例如console.log(goog)
or console.log(goog.fx)
。您可以从闭包对象中获取对象。