offsetheight?offsetHeight和clientHeight的区别
大家好,今天我将为大家揭秘offsetheight和offsetHeight和clientHeight的区别的奥秘,希望我的分享能给你带来新的启发和知识。
...offsetWidth、clientHeight、offsetHeight 高手详细解释!
四种浏览器对 clientHeight、offsetHeight、scrollHeight、clientWidth、offsetWidth和 scrollWidth的解释差异
网页可见区域宽:document.body.clientWidth
网页可见区域高:document.body.clientHeight
网页可见区域宽:document.body.offsetWidth(包括边线的宽)
网页可见区域高:document.body.offsetHeight(包括边线的宽)
网页正文全文宽:document.body.scrollWidth
网页正文全文高:document.body.scrollHeight
网页被卷去的高:document.body.scrollTop
网页被卷去的左:document.body.scrollLeft
网页正文部分上:window.screenTop
网页正文部分左:window.screenLeft
屏幕分辨率的高:window.screen.height
屏幕分辨率的宽:window.screen.width
屏幕可用工作区高度:window.screen.availHeight
屏幕可用工作区宽度:window.screen.availWidth
这里说说四种浏览器对 document.body的 clientHeight、offsetHeight和 scrollHeight的解释。
这四种浏览器分别为IE(Internet Explorer)、NS(Netscape)、Opera、FF(FireFox)。
clientHeight
四种浏览器对 clientHeight的解释都没有什么异议,都认为是内容可视区域的高度,也就是说页面浏览器中可以看到内容的这个区域的高度,一般是最后一个工具条以下到状态栏以上的这个区域,与页面内容无关。
offsetHeight
IE、Opera认为 offsetHeight= clientHeight+滚动条+边框。
NS、FF认为 offsetHeight是网页内容实际高度,可以小于 clientHeight。
scrollHeight
IE、Opera认为 scrollHeight是网页内容实际高度,可以小于 clientHeight。
NS、FF认为 scrollHeight是网页内容高度,不过最小值是 clientHeight。
简单地说
clientHeight就是透过浏览器看内容的这个区域高度。
NS、FF认为 offsetHeight和 scrollHeight都是网页内容高度,只不过当网页内容高度小于等于 clientHeight时,scrollHeight的值是 clientHeight,而 offsetHeight可以小于 clientHeight。
IE、Opera认为 offsetHeight是可视区域 clientHeight滚动条加边框。scrollHeight则是网页内容实际高度。
同理
clientWidth、offsetWidth和 scrollWidth的解释与上面相同,只是把高度换成宽度即可。
注:以上也是转的,对自己有点参考而已,有些值要跟据页面方式而定!我用的Ajax就完全没法用上面的方法定高!
javaScript窗口属性:
网页可见区域宽:document.body.clientWidth
网页可见区域高:document.body.clientHeight
网页可见区域宽:document.body.offsetWidth(包括边线的宽)
网页可见区域高:document.body.offsetHeight(包括边线的宽)
网页正文全文宽:document.body.scrollWidth
网页正文全文高:document.body.scrollHeight
网页被卷去的高:document.body.scrollTop
网页被卷去的左:document.body.scrollLeft
网页正文部分上:window.screenTop
网页正文部分左:window.screenLeft
屏幕分辨率的高:window.screen.height
屏幕分辨率的宽:window.screen.width
屏幕可用工作区高度:window.screen.availHeight
屏幕可用工作区宽度:window.screen.availWidth
在IE、FireFox、Opera下都可以使用
document.body.clientWidth
document.body.clientHeight
即可获得,很简单,很方便。
而在公司项目当中:
Opera仍然使用
document.body.clientWidth
document.body.clientHeight
可是IE和FireFox则使用
document.documentElement.clientWidth
document.documentElement.clientHeight
原来是W3C的标准在作怪啊
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
如果在页面中添加这行标记的话
在IE中:
document.body.clientWidth==> BODY对象宽度
document.body.clientHeight==> BODY对象高度
document.documentElement.clientWidth==>可见区域宽度
document.documentElement.clientHeight==>可见区域高度
注:在IE中“可见区域”基本不认可body,而必需使用documentElement!!!!
在FireFox中:
document.body.clientWidth==> BODY对象宽度
document.body.clientHeight==> BODY对象高度
document.documentElement.clientWidth==>可见区域宽度
document.documentElement.clientHeight==>可见区域高度
在Opera中:
document.body.clientWidth==>可见区域宽度
document.body.clientHeight==>可见区域高度
document.documentElement.clientWidth==>页面对象宽度(即BODY对象宽度加上Margin宽)
document.documentElement.clientHeight==>页面对象高度(即BODY对象高度加上Margin高)
获取窗口高宽:
var w= document.documentElement.offsetWidth;
var h=document.documentElement.offsetHeight;
offsetHeight和clientHeight的区别
js中的clientHeight和offsetHeight的区别如下:
1、clientHeight
网页(内容)可见区域高:document.body.clientHeight即页面浏览器中可以看到内容的这个区域的高度,一般是最后一个工具条以下到状态栏以上的这个区域,与页面内容无关。
注意:IE、Opera认为 scrollHeight是网页内容实际高度,可以小于 clientHeight。
2、offsetHeight
网页可见区域高:document.body.offsetHeight(包括边线的宽)
二者联系:
NS、 FF认为 offsetHeight和 scrollHeight都是网页内容高度,只不过当网页内容高度小于等于 clientHeight时,scrollHeight的值是 clientHeight,而 offsetHeight可以小于 clientHeight。
javascript 中的offsetHeight问题
你得到的是div的offsetHeight,并不是img的offsetHeight。我不知道你的css中box类的设定是怎样的,但如果它是固定高度的,那么默认状态下里面的内容是可以超出box的大小的,这样的话div就不会随着图片而自动改变高度的,所以这种情况下div的offsetHeight与里面的图片的offsetHeight就不可能相等。
还有一种情况就是假如div的height是默认的(即auto),但你获取的时候页面尚未加载完毕(也就是说这时候图片还没有渲染完毕),这时候的offsetHeight也是不准确的。应该在window.onload事件中去获取,这个时候页面已经完全加载完毕了。
js中的clientHeight和offsetHeight有什么区别么
js中的clientHeight和offsetHeight的区别如下:
1、clientHeight
网页(内容)可见区域高:document.body.clientHeight即页面浏览器中可以看到内容的这个区域的高度,一般是最后一个工具条以下到状态栏以上的这个区域,与页面内容无关。
注意:IE、Opera认为 scrollHeight是网页内容实际高度,可以小于 clientHeight。
2、offsetHeight
网页可见区域高:document.body.offsetHeight(包括边线的宽)
二者联系:
NS、 FF认为 offsetHeight和 scrollHeight都是网页内容高度,只不过当网页内容高度小于等于 clientHeight时,scrollHeight的值是 clientHeight,而 offsetHeight可以小于 clientHeight。
非常感谢您的阅读!我们希望本文对于解决您关于offsetheight和offsetHeight和clientHeight的区别的问题提供了一些有价值的信息。如果您还有其他疑问,我们将很乐意为您提供进一步的帮助。