Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Firefox:获取视口左上角的鼠标坐标_Javascript_Firefox_Firefox Addon_Xul - Fatal编程技术网

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

Javascript Firefox:获取视口左上角的鼠标坐标,javascript,firefox,firefox-addon,xul,Javascript,Firefox,Firefox Addon,Xul,大家好 我正在开发一个Firefox扩展,我想在鼠标光标的某个偏移处弹出一个工具提示。但是,当此偏移超出视口时会出现问题。它会显示出来,但用户必须在那里滚动。我希望通过在当前视口中移动工具提示弹出窗口来增强这一点 但是,出现了一个问题,因为我知道我在文档中的位置的唯一线索是鼠标位置。部分解决方案是通过确定当前鼠标坐标+工具提示宽度/高度,并查看它是否将超过window.innerHeight或window.innerWidth,来计算移动工具提示的量 然而,我逐渐意识到,如果它是一个非常长的文档

大家好

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

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

然而,我逐渐意识到,如果它是一个非常长的文档,并且用户向下滚动了相当长的一段时间,那么鼠标坐标将有一个非常大的y值。因此,我不能仅依靠window.innerHeight来查看是否仍在视口中。如果用户多次向下滚动,是否有人找到了在视口中查找鼠标左上角坐标的方法


提前谢谢你!=)

我想你是在寻找类似房产的东西:

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


更具体地说,在您的情况下,
document.body.scrollTop

然而,这是IE特有的,这违背了大多数FireFox扩展的目的还有一些DTD依赖项需要引导


这看起来像是你想要的:

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

window.content.pageXOffset 


谢谢你的提示。我会进一步调查。昨晚睡觉前我看到了上面的答案,我试着用它来做实验。然而,天太早了,我在回答之前就睡着了。我试图获取scrollTop值,但不知什么原因,它总是返回零。window.pageXOffset和window.pageYOffset正好击中了钉子的头部。非常感谢!=)我学到了一些新东西。我很高兴,如果可以的话,我会投两次票。
window.content.pageYOffset