document.body.scrollTop总是0的原因

网工实验笔记:SNMP的配置 简单网络管理协议SNMP(Simple Network Management Protocol)是广泛应用于TCP/IP网络的网络管理标准协议。SNMP提供了一种通过运行网络管理软件的中心计算机(即网络管理工作站)来管理设备的方法。 阅读详情

最近写了一个拖动层的HTML页面,   需要获取滚动条当前的位置.

于是我使用document.body.scrolltop获取y方向滚动的位置...奇怪的事情出现了! 无论滚动条怎么滚动, document.body.scrolltop竟然一直都是0!

对比以前写的一个页面.发现区别很小. 旧页面却没有问题.这就怪了...

我开始一点一点的排除,去掉多于的代码. 直到我去掉文档最顶部的

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

 

页面此时才正常.

原来是这行东西造成IE无法获取document.body.scrolltop!

把顶部这两行删掉将可以了.但是为什么会这样呢?

google一下,发现改成:

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

就可以了,但页面稍有变化,感觉不爽,于是又在google里找,终于解决:

 

var scrollPos; 
if (typeof window.pageYOffset != 'undefined'

   scrollPos 
= window.pageYOffset; 
}
 
else if (typeof document.compatMode != 'undefined' &&    document.compatMode != 'BackCompat'

   scrollPos 
= document.documentElement.scrollTop; 
}
 
else if (typeof document.body != 'undefined'

   scrollPos 
= document.body.scrollTop; 
}
 
alert(scrollPos);

document.body.scrollTop
要改成
document.documentElement.scrollTop

 

C++ int转四字节数组 字节转换 阅读详情

相关推荐

document.body.scrollTop用法

document.body.scrollTop用法

JavaScript学习笔记之 document.body.scrollTop用法

网页可见区域宽: document.body.clientWidth; 网页可见区域高: document.body.clientHeight; 网页可见区域宽: document.body.offsetWidth (包括边线的宽); 网页可见区域高: document.body.offsetHeight (包括边线的宽); 网页正文全文宽: document.body.scrollWid...

jiabin_xu的博客 3万+

vosk-model-small-cn-0.22 中文模型包

vosk-model-small-cn-0.22 中文模型包

javascript滚动到顶部scrollTop用法

首先了解下列相关属性 网页可见区域宽: document.body.clientWidth; 网页可见区域高: document.body.clientHeight; 网页可见区域宽: document.body.offsetWidth (包括边线的宽); 网页可见区域高: document.body.offsetHeight (包括边线的宽); 网页正文全文宽: document.body.scrollWidth; 网页正文全文高: document.body.scrollHeight; 网页被卷去的高:

weixin_50367873的博客 2万+

document.body.scrollTop的值总为零的解决办法

1. 在模拟点击返回顶部按钮,页面就会滑动到顶部,但是在获取页面卷去头部的大小时,document.body.scrollTop总是为0. 后面尝试用了document.documentElement.scrollTop就可以获得被卷去的头部。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible

weixin_42929937的博客 2049

关于document.body.scrollTop的console值为0原因

html文档中的有<!DOCTYPE html>声明时,document.body.scrollTop值就是总为0 这时候换成document.documentElement.scrollTop试试看 ie到时可以了 但是谷歌的老点的版本还是行 后来又查了查 才知道原来ie狐火都是documentElement, 只有谷歌的是body 但是后来谷歌也改了 所以...

u013100927的专栏 198

滚动事件:document.body.scrollTop总是0原因

document.body.scrollTop 转换成document.documentElement.scrollTop 具体原因可见:click here 转载于:https://www.cnblogs.com/powerplay/p/8536694.html

weixin_33918114的博客 820

html怎么控制top值为0,关于vue滚动scrollTop 赋值一直为0问题

Vue中document.body.scrollTop的值总为零的解决办法最近在做vue的时候监听页面滚动发现document.body.scrollTop一直为0但是发现document.body.scrollTop一直是0。查资料发现是DTD的问题。页面指定了DTD,即指定了DOCTYPE时,使用document.documentElement。页面没有DTD,即没指定DOCTYPE时,使用d...

weixin_39710396的博客 564

document.body.scrollTop总是0的问题及最佳解决方案

在写javascript时遇到document.body.scrollTop总是0,很苦恼,查资料得知原来是!DOCTYPE设置的问题

hijack-x's Blog 5983

ie浏览器网页中$(document.body).scrollTop()值始终为0的解决办法

当网页做了以下声明时 document.body.scrollTop的值永远等于0。 解决办法是只需把document.bodydocument.documentElement替换即可。 尤其要注意 " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"或 "http://www.w3.org/TR/ht

sxf359的博客 3166

深入理解为什么document.body.scrollTop总是0呢?

&lt;style type="text/css"&gt;  body{ width:1500px; height:1500px; padding-top:200px }&lt;/style&gt;加此样式为了让网页形式滚动1. 为什么document.body.scrollTop总是0呢?   理解二点:      第一点:      在文档页首没有加&lt;!DOCTYPE html PUBL...

weixin_34364135的博客 247

解决VUE中document.body.scrollTop0

Vue中document.body.scrollTop的值总为零的解决办法 最近在做vue的时候监听页面滚动发现document.body.scrollTop一直为0 但是发现document.body.scrollTop一直是0。 查资料发现是DTD的问题。 页面指定了DTD,即指定了DOCTYPE时,使用document.documentElement。 页面没有DTD,即没指定DO

柠檬说葡萄你好酸 1万+

bodyscrollTop一直是0

html scroll的坑,body 的滚动条数据一直是0

qq_38188595的博客 441

安卓微信浏览器scrollTop

结果在pc端的浏览器可以生效,pc端浏览器中的移动端模式可以生效,在苹果手机上的微信浏览器也可以生效,唯独在安卓手机的微信浏览器不能生效。前阵子在公司实现一个常见的需求,就是添加一个返回顶部的按钮,当滑动网页到一定程度后会出现这个按钮,需要获取到元素的滚动高度。解决是解决了,但是为什么呢?这几个写法有什么区别呢?以后遇到这种类型的兼容性问题一般这样处理就行了。后来发现在安卓手机的微信浏览器中。

m0_75149225的博客 152

应用WEB标准会使ScrollTop属性失效!

DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 0 _fcksavedurl=" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" />Transitional//EN"0 _fcksavedurl=" align="top" src="http://www

kxtk的专栏 1178
上一篇: 从硬盘成功安装RedHat9.0
下一篇: 中国股市
ked
ked
博客等级 码龄23年 51粉丝 86原创
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值