查找元素的偏移客户端位置
如何使用 Javascript 查找元素的偏移客户端位置? (我假设可以在 BHO 或 Gecko/NPAPI 中编写相同的代码)。
我面临的问题是找到元素的偏移客户端位置的方法。 e.srcElement.offsetX/Y
并不总是给出正确的值(对于 clientX/Y 也是如此)。某些情况下我们还需要考虑父元素的滚动。
一般我们如何做到这一点?有一个简单的方法吗?
How to find the offset client position of an element using Javascript? (I assume the same code can be written in a BHO or Gecko/NPAPI).
The problem I am facing is a way to find out the offset client position of the element. The e.srcElement.offsetX/Y
does not give the correct value always (same goes for clientX/Y). In some cases we also need to consider the parent element scroll.
How do we do this in general? Is there an easy way for this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
请参阅下面的代码:
See the code below:
将元素 id 传递给函数。
Pass the element id to the functions.
要包含滚动,请查看此 jQuery 事件侦听器以记录滚动顶部和偏移量。
为了单独获得偏移量,
To include scrolling, take a look at this jQuery event listener to log the scrollTop and the offset.
To get the offset alone,
Orhun Alp Oral 的回答的 CoffeeScript 版本:
CoffeeScript version of Orhun Alp Oral's answer: