0

由于画布使用自己的局部坐标系,我尝试了几种方法来确定鼠标单击的全局 X、Y 并将它们转换为坐标系。我通过 jQuery 从画布本身减去左边距和上边距来做到这一点

.offset()

或通过使用

getBoundingClientRect()

在 Javascript 中。

遗憾的是,这两者都会受到浏览器滚动的影响。我可能只是缺少一个属性(我使用 e.clientX 和 e.clientY,因为我知道它们具有跨浏览器的能力)会给我一个更明确的价值……我一直在仔细研究 DOM 元素的所有属性他们似乎都没有给我我需要的东西......

我需要一种独立于滚动的方式来确定我离文档顶部有多远,以便将鼠标点击与坐标系相关联。

...或者我是个白痴,并且有一种跨浏览器的方法来检测相对于对象的鼠标点击?提前致谢。

4

1 回答 1

0

我能找到的最佳方法是使用 jQuery 方法,例如 $('#').offset() 然后考虑滚动。或者,可以使用 Object.getBoundingClientRect(),但我不确定跨浏览器的兼容性。

没有其他人喜欢插话,哈哈。

于 2013-04-02T06:27:14.433 回答