为什么document.body.scrollTop读出来的总是0?

Iamfish 2005-01-04 09:05:57
为什么document.body.scrollTop读出来的总是0?

IE6.Windows2000Server

我想取出当前这个页面的可视区域在整个页面的偏移量.该如何取?

...全文
457 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Iamfish 2005-04-04
  • 打赏
  • 举报
回复
loneghost(dotnet入门者……)
页面如果使用DreamWeaver编辑的
试试将
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
改成
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">



正解。
一个多月后才发现的。
loneghost 2005-01-24
  • 打赏
  • 举报
回复
页面如果使用DreamWeaver编辑的
试试将
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
改成
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
crystalsmu 2005-01-18
  • 打赏
  • 举报
回复
我以前也碰到这个问题,我的解决办法是
if (document.documentElement && document.documentElement.scrollTop)
theTop = document.documentElement.scrollTop;
else
theTop = document.body.scrollTop;
alert(theTop);
lienzhu 2005-01-05
  • 打赏
  • 举报
回复
呵呵,贴出你的脚本!

你别在网页加载过程中取,在加载完去一定能取出来!
Iamfish 2005-01-05
  • 打赏
  • 举报
回复
这样确实可以取出来.

可是我在我的网页中老是取不出来.每次都是0.气死我了.脚本也没有出现错误啊.
Iamfish 2005-01-05
  • 打赏
  • 举报
回复
我在整个页面最后取,也不行.

最后用下面的方法搞定.没办法中的办法.唉.

function ShowBigPic(obj,imgsrc){

var objParent = obj.offsetParent;
var iOffset = obj.offsetTop;
while(objParent.tagName.toUpperCase() != "BODY"){
iOffset += objParent.offsetTop;
objParent = objParent.offsetParent;
}

divShowImage.style.pixelTop=iOffset-event.clientY+event.offsetY+2;

if(event.clientX>(document.body.clientWidth/2)){
divShowImage.style.pixelLeft=0;
}else{
divShowImage.style.pixelLeft=document.body.clientWidth-divShowImage.style.pixelWidth;
}

ifrmImage.imgShowImage.src=obj.src;
ifrmImage.imgShowImage.src=imgsrc;
divShowImage.style.visibility='visible';
}
lienzhu 2005-01-04
  • 打赏
  • 举报
回复
<body>
<div style="height:1000">
<script>
alert(document.body.scrollTop)
</script>
<br><br><br><br><br><br><br><br>
<input type="button" value="test" onclick="alert(document.body.scrollTop)">
</div>
</body>

移动滚动条后,刷新网页你将得到不同的结果;

脚本弹出的是0,点击按钮弹出为真实值;
因为脚本弹出时网页还没加栽完毕,document.body.scrollTop默认值为0;

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧