首页 > 编程 > JavaScript > 正文

Document.body.scrollTop的值总为零的快速解决办法

2019-11-20 09:44:38
字体:
来源:转载
供稿:网友

有一个功能需要判断返回顶部按钮是否显示。

JS代码如下:

var sTop = document.body.scrollTop;  if(sTop>100){    document.getElementById("sm_top").style.display="block";  }else{    document.getElementById("sm_top").style.display="none";  }

但是发现document.body.scrollTop一直是0。

查资料发现是DTD的问题。

页面指定了DTD,即指定了DOCTYPE时,使用document.documentElement。

页面没有DTD,即没指定DOCTYPE时,使用document.body。

IE和Firefox都是如此。

而我的页面加了<!DOCTYPE html>,所以如下即可。

 /*判断回到顶部按钮显示与否*/   window.onscroll=function(){    var sTop = document.documentElement.scrollTop;  if(sTop>100){    document.getElementById("sm_top").style.display="block";  }else{    document.getElementById("sm_top").style.display="none";  }  }

以上所述是小编给大家介绍的Document.body.scrollTop的值总为零的解决办法,希望对大家有所帮助!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表