【发布时间】:2010-03-29 18:24:06
【问题描述】:
我知道如何获取页面的scrollTop,我使用这个简单的JS函数(代码复制过来):
function GetScrolledTop()
{
//I never work in IE quirkmode, I always use DOCTYPE as 1st line, so I don't need to test for document.body.scrollTop
return self['pageYOffset'] || document.documentElement.scrollTop;
}
这可行,我的问题如下:我试图将它添加到页面 onload 事件中
<body onload="alert(GetScrolledTop());">
在页面加载时我得到零(这是有道理的),但问题是我得到零即使我滚动页面然后重新加载它而不触摸滚动条。
浏览器好像是这样的:
- 加载页面
- 打电话给我的
GetScrolledTop()(显然显示为零) - 然后将页面滚动到之前的位置。
你知道如何在第 3 步之后获得scolledTop 吗?
我的意思是如何在浏览器滚动页面后获得scrolledTop ?
(也许不使用计时器)
【问题讨论】:
-
从用户界面/体验的角度来看,通过滚动回到页面顶部来接管浏览器的本机功能以帮助导航并不是一个好主意。跨度>
-
@bgy:没有提到接管功能,只获取当前滚动位置。
标签: javascript dom-events onload scrolltop onscroll