火狐:获取视口的左上角的鼠标坐标(Firefox: Get mouse coordinates of

2019-10-16 16:36发布

今天是个好日子。

我工作的一个Firefox扩展,我想在特定的鼠标光标偏移弹出一个提示。 然而,问题是当这个偏移量超出视口。 它被显示,但用户必须滚动那边。 我希望通过移动当前视口内的提示弹出来加强这方面的。

然而,问题的产生是因为对我在文档中唯一的线索我是鼠标的位置。 的部分解决办法是计算有多少通过找出动我的提示,如果当前的鼠标坐标+工具提示宽度/高度,看看它是否会超过window.innerHeight或window.innerWidth。

不过,我逐渐认识到,如果它是一个很长的文档和用户向下滚动公平一点,鼠标坐标将有一个非常大的y值。 因此,我不能仅仅依靠window.innerHeight,看看我依然视口内。 任何人都找到了一个办法找出如果用户已经向下滚动了很多在视窗左上角的鼠标坐标?

先感谢您! =)

Answer 1:

更具体地讲你的情况, document.body.scrollTop

然而,这是相当IE特有的,这违背了大多数的Firefox扩展的目的。 ;-)也有一些DTD依赖启动。

这看起来像你想要什么: 确定浏览器尺寸和文件滚动偏移



Answer 2:

我认为你正在寻找的东西,如scrollTop的属性:

scrollTop的获取或设置一个元素的内容被向上滚动的像素的数量。



Answer 3:

@WAI - 嗯,你说的是正确的,但正是你将不得不如果你正在为Firefox扩展,使用以下命令:

window.content.pageXOffset 

要么

window.content.pageYOffset


文章来源: Firefox: Get mouse coordinates of top-left corner of viewport