本来是为了通过document.body.scrollTop来获取浏览器垂直滚动条向下滚动的像素,但是不管滚动条在什么位置总是返回是0,造
成这样的原因和html的头部声明有关,如果头部声明 为:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML
4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd
">,
这样肯定得到的结果是 0,如果该为<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN">就能得到正确的结果,对于第一种头部声明想要得滚动条的滚动的高度怎么办,解决方法有两种
1、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;
}
2、用document.documentElement.scrollTop 替代 document.body.scrollTop
分享到:
相关推荐
在探讨“火狐、谷歌、IE关于`document.body.scrollTop`和`document.documentElement.scrollTop`以及值为0的问题”这一主题时,我们深入分析了浏览器在处理页面滚动位置时的不同行为,尤其是当滚动位置值始终为0时的...
### document.body.scrollTop 用法详解 #### 一、概述 `document.body.scrollTop` 是一个用于获取或设置浏览器中...希望本文能帮助您更深入地理解 `document.body.scrollTop` 的使用技巧及其在实际项目中的应用场景。
综上所述,`document.body.scrollTop` 是JavaScript中处理页面滚动的一个重要工具,它可以帮助开发者实现各种与页面滚动相关的功能,提高用户体验。在实际项目中,熟练掌握并运用这一属性可以让你的网页动态效果更加...
当开发者试图使用document.body.scrollTop来获取当前滚动条位置时,可能会遇到这个值一直返回0的情况。这种现象特别容易在不同浏览器之间出现兼容性问题,尤其在使用DOCTYPE声明时,不同浏览器可能有着不同的表现。 ...
在JavaScript中,`document.body.scrollTop` 是一个常用于获取网页滚动条顶部到页面内容顶部的距离的属性。然而,有时候你会发现这个属性的值始终为零,即使页面已经进行了滚动。这通常与文档类型声明(DOCTYPE)...
因此,当你尝试通过`document.body.scrollTop`获取滚动值时,如果页面有DTD,返回的值始终为0,导致无法正确处理基于滚动位置的布局或效果。 解决这个问题的方法是使用`document.documentElement.scrollTop`。下面...
在实际应用中经常会遇到以下问题:document.documentElement.scrollTop在Chrome里总为0document.body.scrollTop 在IE和firefox里总为01、各浏览器下 window.pageYOffset/document.documentElement.scrollTop/...
在JavaScript中,`document.documentElement` 和 `document.documentElement.scrollTop` 是两个非常重要的属性,它们与网页文档的DOM(Document Object Model)交互,特别是涉及到页面滚动时的行为。本文将深入讲解...
但在W3C标准模式下(如XHTML文档),`document.body.scrollTop`通常返回0,此时应使用`document.documentElement.scrollTop`和`document.documentElement.scrollLeft`来获取正确的滚动值。 以下是一段具有良好兼容...
它通过比较 `document.body.clientHeight` 和 `document.documentElement.clientHeight` 来决定返回哪个值。在某些情况下,这两个属性的值可能会有所不同,所以需要进行比较选择最小或最大的值。 ```javascript ...
此函数返回`document.body.scrollHeight`和`document.documentElement.scrollHeight`中的较大值作为文档的总高度。 #### 五、不同浏览器下的表现差异 不同浏览器对`clientWidth`、`clientHeight`等属性的支持有所...
4. **`document.body.scrollTop`** 和 **`document.body.scrollLeft`**: - 这两个属性表示文档相对于视口已滚动的距离,即滚动条的位置。 5. **`window.screenTop`** 和 **`window.screenLeft`**: - 分别表示...
然而,IE6到IE10在没有DOCTYPE声明的页面中,推荐使用`document.body.scrollTop`,而在有DOCTYPE声明的页面中,应该使用`document.documentElement.scrollTop`。Safari浏览器则有自己的方法,即`window.pageYOffset`...
在本文中,我们将深入探讨一些关于JS中`document.documentElement`、`document.body`及其相关属性的知识点,以及如何处理不同情况下的滚动和尺寸获取。 在HTML文档中,`document.body`通常指的是HTML中的<body>元素...
JavaScript中的`document.compatMode`属性是用来检测浏览器当前的渲染模式,这对于处理跨浏览器的兼容性问题至关重要。在网页开发中,浏览器对HTML文档的解析方式有两种:Quirks Mode(怪异模式)和Standards Mode...
1. `document.body.clientWidth`:返回BODY元素的宽度,不包括滚动条和边框。 2. `document.body.clientHeight`:返回BODY元素的高度,同样不包括滚动条和边框。 3. `document.documentElement.clientWidth`:在IE中...
3. **回退至 `document.body.scrollTop`**:如果上述两种方法都不可行,则尝试使用 `document.body.scrollTop`,尽管它在某些情况下可能不准确或返回0。 示例代码如下: ```javascript var scrollPos; if (typeof ...
JavaScript 获取文本框的值和浏览器高度和宽度值 在 Web 开发中,获取文本框的值和浏览器的高度和宽度值是非常重要的。这篇文章将详细介绍如何使用 JavaScript 获取文本框的值和浏览器的高度和宽度值。 获取文本框...