信息显示浮动层时,IE、Firefox下都能显示正常,但Chrome下出现了浮动层永远显示在
上面,经过仔细分析,发现Chrome对document.documentElement.scrollTop的识别会出
现误差。不过加上document.body.scrollTop后,则显示正常。
由于document.documentElement.scrollTop和document.body.scrollTop在标准模式或
者是奇怪模式下都只有一个会返回有效的值,所以都加上也不会有问题(看来上面的问
题是Chrome可能把文档当作非标准文档来解析了)。
即获取高度时使用
document.documentElement.scrollTop+document.body.scrollTop,经测试,代码在
IE、Firefox、Chrome下都能显示正常了。
分享到:
相关推荐
在探讨“火狐、谷歌、IE关于`document.body.scrollTop`和`document.documentElement.scrollTop`以及值为0的问题”这一主题时,我们深入分析了浏览器在处理页面滚动位置时的不同行为,尤其是当滚动位置值始终为0时的...
在JavaScript中,`document.documentElement` 和 `document.documentElement.scrollTop` 是两个非常重要的属性,它们与网页文档的DOM(Document Object Model)交互,特别是涉及到页面滚动时的行为。本文将深入讲解...
- 对于大多数现代浏览器(如 Chrome、Firefox、Safari),使用 `document.documentElement.scrollTop` 来获取页面的滚动位置更为可靠。 ```javascript var scrollTop = document.documentElement.scrollTop; ``` ...
在实际应用中经常会遇到以下问题:document.documentElement.scrollTop在Chrome里总为0document.body.scrollTop 在IE和firefox里总为01、各浏览器下 window.pageYOffset/document.documentElement.scrollTop/...
在某些老版本的IE浏览器中,特别是IE8及以下,`window.pageYOffset` 不被支持,此时你需要使用`document.documentElement.scrollTop` 或 `document.body.scrollTop` 来获取滚动位置。但要注意,`document....
当开发者试图使用document.body.scrollTop来获取当前滚动条位置时,可能会遇到这个值一直返回0的情况。这种现象特别容易在不同浏览器之间出现兼容性问题,尤其在使用DOCTYPE声明时,不同浏览器可能有着不同的表现。 ...
var sTop = document.documentElement.scrollTop == 0 ? document.body.scrollTop : document.documentElement.scrollTop; } ``` 这段代码首先检查`document.compatMode`,如果为`BackCompat`,那么它使用`...
var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop); var scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft); return { x: box....
在Chrome浏览器中,`document.body.scrollTop`和`document.documentElement.scrollTop`都可以用来获取滚动条位置。然而,IE6到IE10在没有DOCTYPE声明的页面中,推荐使用`document.body.scrollTop`,而在有DOCTYPE...
1. **检查 `window.pageYOffset`**:在非IE浏览器中,如Firefox、Chrome等,可以使用 `window.pageYOffset` 来获取垂直滚动条的偏移量。 2. **检查 `document.documentElement.scrollTop`**:对于IE和其他遵循Web...
if (document.documentElement.scrollTop || document.body.scrollTop) { // 对于不支持scrollTop的旧版IE var windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body....
var top = xy.top - (document.documentElement.clientTop || 0) + document.documentElement.scrollTop; var left = xy.left - (document.documentElement.clientLeft || 0) + document.documentElement....
首先,我们来看IE浏览器中的方法: 1. `document.body.clientWidth`:返回BODY元素的宽度,不包括滚动条和边框。 2. `document.body.clientHeight`:返回BODY元素的高度,同样不包括滚动条和边框。 3. `document....
例如,`document.documentElement` 和 `document.body` 在IE和非IE浏览器中滚动条属性的使用方式有区别。以下是一个跨浏览器获取滚动条位置的函数: ```javascript function getScroll() { var t, l, w, h; if ...
document.body.scrollTop和document.documentElement.scrollTop都可以 2、各浏览器下 scrollTop的差异 IE6/7/8/9/10: 对于没有doctype声明的页面里可以使用 document.body.scrollTop 来获取 scrollTop高度 ; ...
var viewportHeight = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); ``` 此外,还有一些其他相关的属性和方法,例如: - `document.body.offsetWidth` 和 `document.body....
在JavaScript中,可以使用`window.pageYOffset`或`document.documentElement.scrollTop`(对于非IE浏览器)以及`document.body.scrollTop`(对于旧版IE)来获取当前滚动的位置。水平滚动可以通过`window.pageXOffset...
此外,需要注意的是,虽然`document.documentElement`在大多数现代浏览器中有效,但为了更好地兼容旧版浏览器,特别是早期版本的IE浏览器,我们可以使用`document.body`来代替`document.documentElement`。...
本文将详细讲解如何使用JavaScript(js)来实现这一功能,同时考虑到浏览器兼容性,包括IE6、7、8、9以及火狐(Firefox)、谷歌浏览器(Chrome)等。 首先,我们需要一个HTML结构来承载视频元素。HTML5引入了`...
`document.compatMode` 是一个在JavaScript中用于检测浏览器渲染页面所使用的渲染模式的属性。这个属性可以帮助开发者了解浏览器是否按照W3C的标准(CSS1Compat)还是非标准(BackCompat,也称为Quirks Mode)来解析...