我希望找到一种方法来获取当前可见窗口的位置(相对于总页面宽度/高度),以便可以将其强制从一个部分滚动到另一部分。但是,在猜测哪个对象对您的浏览器拥有真正的X / Y时,似乎有很多选择。
为了确保IE 6 +,FF 2+和Chrome / Safari能够正常工作,我需要选择以下哪两项?
window.innerWidth
window.innerHeight
window.pageXOffset
window.pageYOffset
document.documentElement.clientWidth
document.documentElement.clientHeight
document.documentElement.scrollLeft
document.documentElement.scrollTop
document.body.clientWidth
document.body.clientHeight
document.body.scrollLeft
document.body.scrollTop
还有其他吗?一旦我知道窗口在哪里,就可以设置一个事件链,该事件链将缓慢调用window.scrollBy(x,y);
直到到达所需位置。
jQuery(v1.10)用来查找的方法是:
var doc = document.documentElement;
var left = (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);
var top = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);
那是:
window.pageXOffset
首先进行测试,并使用它(如果存在)。document.documentElement.scrollLeft
。document.documentElement.clientLeft
它是否存在。的减法document.documentElement.clientLeft
/ Top
似乎只需要正确的地方已应用边界(不填充或利润率,但实际边界)的根元素的情况下,在那个,可能只在某些浏览器。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句