浏览器抓取网页(window对象获取页面滚动距离的高度时候,往往有不同的获取方式 )
优采云 发布时间: 2022-02-16 05:15浏览器抓取网页(window对象获取页面滚动距离的高度时候,往往有不同的获取方式
)
在获取页面滚动距离的高度时,往往有不同的获取方式,不同的浏览器支持的属性略有不同:
pageYOffset:属于窗口对象。 IE9+、Firefox、Chrome、Opera均支持此方法获取页面滚动投注值,DOCTYPE定义规则将被忽略。
window.pageYOffset
scrollY:属于window对象,Firefox、Chrome、Opera都支持,IE不支持。 DOCTYPE 定义规则被忽略。
window.scrollY
如果页面没有定义DOCTYPE文档头,所有浏览器都支持document.body.scrollTop属性获取滚动高度。
document.body.scrollTop
如果页面定义了DOCTYPE文档头,则HTML元素上的scrollT属性可以获取IE、Firefox、Opera(presto内核)下的滚动高度值,Chrome和Safari下为0。
document.documentElement.scrollTop; //Chrome,Safari下为0
这样在获取页面滚动高度时优先使用window.pageYOffset,然后是scrollTop。
var _scrollLeft = window.scrollX || window.pageXOffset || document.documentElement.scrollLeft
var _scrollTop = window.scrollY || window.pageYOffset || document.documentElement.scrollTop