Firefox:获取视口左上角的鼠标坐标

时间:2009-06-25 18:23:04

标签: javascript firefox firefox-addon xul

大家好日子。

我正在开发一个Firefox扩展程序,我想在鼠标光标的某个偏移处弹出一个工具提示。但是,当此偏移量超出视口时会出现问题。它会显示但用户必须在那里滚动。我希望通过在当前视口中移动工具提示弹出窗口来增强此功能。

然而,出现问题是因为我在文档中的唯一线索是鼠标位置。部分解决方案是通过查找当前鼠标坐标+工具提示宽度/高度并查看它是否超过window.innerHeight或window.innerWidth来计算移动工具提示的程度。

然而,我开始意识到,如果它是一个非常长的文档并且用户向下滚动了一点,鼠标坐标将具有非常大的y值。因此,我不能仅仅依靠window.innerHeight来查看我是否仍在视口中。任何人都找到了一种方法,如果用户已经向下滚动,找到视口左上角的鼠标坐标?

提前谢谢! =)

3 个答案:

答案 0 :(得分:2)

更具体地说,就是document.body.scrollTop

然而,这非常适合IE,这违背了大多数FireFox扩展的目的。 ;-)还有一些DTD依赖项可以启动。

这看起来像你想要的:Determining browser dimensions and document scroll offsets

答案 1 :(得分:1)

我认为您正在寻找类似 scrollTop 属性的内容:

  

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

答案 2 :(得分:0)

@WAI - 你所说的是正确的,但如果你正在为firefox扩展工作,你将不得不使用以下内容:

window.content.pageXOffset 

OR

window.content.pageYOffset