准确测量画布边距的方法

时间:2013-03-21 05:13:44

标签: javascript scroll border margins

由于画布使用自己的局部坐标系,我尝试了几种方法来确定鼠标点击的全局X,Y并将它们转换为坐标系。我这样做是通过jQuery

从画布本身中减去左边距和上边距
.offset()

或使用

getBoundingClientRect()

在Javascript中。

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

我需要一种与滚动无关的方法来确定与文档顶部相​​距多远,以便将鼠标点击与坐标系相关联。

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

1 个答案:

答案 0 :(得分:0)

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

没有其他人觉得好像在等着,哈哈。

相关问题