`
Drakedog
  • 浏览: 48045 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

关于不同浏览器获得clientWidth 与clientHeight 的不同结果

阅读更多
<script>
function getInfo()
{
var s = "";
s = " 网页可见区域宽:" document.body.clientWidth;
s = " 网页可见区域高:" document.body.clientHeight;
s = " 网页可见区域宽:" document.body.offsetWidth " (包括边线和滚动条的宽)";
s = " 网页可见区域高:" document.body.offsetHeight " (包括边线的宽)";
s = " 网页正文全文宽:" document.body.scrollWidth;
s = " 网页正文全文高:" document.body.scrollHeight;
s = " 网页被卷去的高(ff):" document.body.scrollTop;
s = " 网页被卷去的高(ie):" document.documentElement.scrollTop;
s = " 网页被卷去的左:" document.body.scrollLeft;
s = " 网页正文部分上:" window.screenTop;
s = " 网页正文部分左:" window.screenLeft;
s = " 屏幕分辨率的高:" window.screen.height;
s = " 屏幕分辨率的宽:" window.screen.width;
s = " 屏幕可用工作区高度:" window.screen.availHeight;
s = " 屏幕可用工作区宽度:" window.screen.availWidth;


s = " 你的屏幕设置是 " window.screen.colorDepth " 位彩色";
s = " 你的屏幕设置 " window.screen.deviceXDPI " 像素/英寸";
//alert (s);
}
getInfo();
</script>
在我本地测试当中:
在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的标准在作怪啊
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "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 ==> 可见区域高度
在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高)
而如果没有定义W3C的标准,则
IE为:
document.documentElement.clientWidth ==> 0
document.documentElement.clientHeight ==> 0
FireFox为:
document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽)document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高)
Opera为:
document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽)document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高
分享到:
评论

相关推荐

    clientHeight offsetHeight scrollHeight clientWidth详解

    clientHeight offsetHeight scrollHeight clientWidth详解

    clientHeight

    四种浏览器对_clientHeight、offsetHeight、scrollHeight、clientWidth、offsetWidth_和_scrollWidth_的解

    JS针对浏览器窗口关闭事件的监听方法集锦

    本文实例总结了JS针对浏览器窗口关闭事件的监听方法。分享给大家供大家参考,具体如下: 方式一:(适用于IE浏览器,而且刷新不提示,只在点击浏览器关闭按钮的时候提示) [removed] [removed]=onclose; function ...

    Js与Jq获取浏览器和对象值的方法

    document.documentElement.clientWidth ==&gt; 浏览器可见区域宽度 document.documentElement.clientHeight ==&gt; 浏览器可见区域高度 document.body.clientWidth ==&gt; BODY对象宽度 document.body.clientHeight ==&gt; ...

    scrollWidth,clientWidth与offsetWidth的区别

    scrollWidth,clientWidth与offsetWidth的区别

    doctype后如何获得body.clientHeight的方法

    在ie6中很多js脚本执行就会出现问题,一般是在获取clientWidth, clientHeight,offsetWidth, offsetHeight,scrollWidth, scrollHeight,scrollTop, scrollLeft会返回不正确的值。 因为在加了doctype后,在ie6中...

    谈谈JS中常遇到的浏览器兼容问题和解决方法

    常遇到的关于浏览器的宽高问题: //以下均可console.log()实验 var winW=document.body.clientWidth||document.docuemntElement.clientWidth;//网页可见区域宽 var winH=document.body.clientHeight||document....

    【JavaScript源代码】JavaScript获取网页的宽高及如何兼容详解.docx

    但是获取网页的宽高这里面还是有一点(hen duo)坑的,这里我进行了总结和详解,若有补充欢迎评论补充~ 这种方式只支持IE9以及以上版本的浏览器 网页高度,打开F12控制台当然高度会不同 console.log(document....

    浏览器常用高宽的jquery插件

    代码如下: (function($) { /** * 取得浏览器视图的宽度 */ $.viewWidth=function(){ var w = 0, D=document; if( D.documentElement && D.documentElement.clientWidth ) { w = D.documentElement.clientWidth; } ...

    js获取浏览器高度 窗口高度 元素尺寸 偏移属性的方法

    一、通过浏览器获得屏幕的尺寸 二、获取浏览器窗口内容的尺寸 //高度 window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight //宽度 window.innerWidth || document....

    js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码

    IE中,浏览器显示窗口大小只能以下获取: 代码如下复制代码 代码如下:document.body.offsetWidth document.body.offsetHeight在声明了DOCTYPE的浏览器中,可以用以下来获取浏览器显示窗口大小: 代码如下复制代码 ...

    JavaScript获取网页、浏览器、屏幕高度和宽度汇总

    经常发现在写JavaScript的时候,都需要用到网页、浏览器或屏幕的高度和宽度来解决布局定位的问题,时常前用后忘,要不就是在网上search,干脆自己总结一下,这样也方便再次使用,省时省力。 网页可见区域宽:...

    原生js实现小球在屏幕上自由移动,当遇到屏幕边缘时反弹

    1、首先要获取桌面的宽度与高度,注意获取屏幕的宽度与高度需要封装一下,如下所示 宽:document.documentElement.clientWidth || document.body.clientWidth; 高:document.documentElement.clientHeight || ...

    打气球小游戏-面向对象.zip

    初始化设置 :初始化 x,y→ x,y轴 x轴clientWidth取随机 y轴clientHeight div创建加类上树 设置初始的left top 值 设置气球背景图位置 变换不同的气球 初始 type 随机的 0-11 气球向上运动 气球进行数组管理 ...

    js获取浏览器和屏幕的各种宽度高度

    一:网页可见区域宽高,不包括工具栏和滚动条(浏览器窗口可视区域大小) 1.对于IE9+、chrome、firefox、Opera、Safari: window.innerHeight浏览器窗口的内部高度; window.innerWidth浏览器窗口的内部宽度; 2....

    js获取浏览器基本信息大全

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

    Js与Jq 获取页面元素值的方法和差异对比

    JS与Jquery 都能获取页面元素的宽度,高度和相对位移等数值,那他们之间能相互转换或替代吗,写法又有哪些差异呢?本文将详细为你介绍。 1.Js获取浏览器高度和宽度 document.documentElement.clientWidth ==&gt; ...

    js获取浏览器的各种属性

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

    JS获取各种浏览器窗口大小的方法

    常用:JS 获取浏览器窗口大小 代码如下:// 获取窗口宽度 if (window.innerWidth) winWidth = window.innerWidth; else if ((document.body) && (document.body.clientWidth)) winWidth = document.body.clientWidth; ...

    scrollWidth,clientWidth,offsetWidth的区别

    主要介绍了scrollWidth,clientWidth,offsetWidth的区别,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics