如果写下这个:
$(document).on("click", function () {
window.scroll( 0, 70 );
});
始终有效,但如果写下这个:
window.onload = function () {
window.scroll( 0, 70 );
}
这不适用于safari和chrome的“隐身窗口”。在其他浏览器中工作。 为什么呢?
答案 0 :(得分:3)
简单来说,主要原因是您绑定的不同浏览器/ dom元素的状态。
在第一个中,您使用jQuery绑定click
上的<body/>
事件,这可能确保当您实际点击它时body
初始化文档并保留足够的滚动以使效果显示给你。
在第二个中,你绑定到窗口的onload
事件,它实际上在body
可能已加载之前触发,或累积了足够的可滚动区域,从而使效果不出现。
理想的技术是使用
$(document).ready(function() {
window.scrollTo(0,70);
});