对于firefox,无论如何确定“视口”(即客户区)的TopLeft位置?我知道高度/宽度可通过 window.innerHeight 和 window.innerWidth 获得。但我还需要知道“innerTop”和“innerLeft”(不存在)。
谢谢,
抢
如果可以获取鼠标事件,可以查看它的event.screenX /screenY 属性并减去 event.clientX/clientY 属性。这甚至是跨浏览器兼容的(DOM 2 级事件)。
window.innerHeight
- 文档区域的高度。window.outerHeight
- 整个窗口的高度。你可以从另一个中减去一个,得到文档区域到窗口顶部的距离,再加上状态栏的高度。
Try this:
document.documentElement.getBoundingClientRect()
The result of this function will have a left and a top property which will give you what you need.
Note: This function is implemented in Fx3 so you'll need the DOM-traversing offsetParent iteration for older versions.
这似乎也给出了从文档顶部到视口的偏移量:
window.pageYOffset