1

我正在使用 Google Closure javascript 库制作拖放应用程序。

如何在拖动事件中检测鼠标的当前位置?

var dragOverCallBack = function (e) {
  console.log(e.somehowGetMouseXPosition());
}

我尝试过e.clientXe.pageX无济于事(两者都未定义)。

4

2 回答 2

3

我不确定为什么 e.clientX 和 e.pageX 将是未定义的,除非 e 被作为未定义传递,这意味着您的回调设置不正确。我会尝试在您的回调中运行运行 console.debug(e) 并在 chrome 的开发人员工具控制台中查看该对象。它可能会提供对传递给您的事件对象的一些见解。

除了 e.clientX 和 e.pageX 之外,还有各种其他选项可以为不同的用途提供鼠标坐标(e.offsetX、e.screenX 等),本文很好地介绍了这些不同的坐标。你可以尝试其中的一些,看看你能不能得到任何东西。

于 2012-08-02T03:38:31.313 回答
-1

更好的方法是尝试控制您的全局对象,例如console.log(goog)or console.log(goog.fx)。您可以从闭包对象中获取对象。

于 2012-09-05T10:47:57.197 回答