现在的位置: 首页 > 综合 > 正文

关于javascript中的宽和高

2013年09月20日 ⁄ 综合 ⁄ 共 1126字 ⁄ 字号 评论关闭

 javascript中的高和宽有很多种

宽:width,offsetWidth,clientWidth,scrollWidth,availWidth

高: height,offsetHeight,clientHeight,scrollHeight,availHeight

widht和height很奇怪,看如下代码

<body>

<script type="text/javascript">

alert(document.body.width);

</script>

</body>

弹出对话框为undefined.如果是alert(document.body.style.width);则弹出对话框为空字符串.也就是说不单独设width属性,那在javascript中用width属性无法得到值(height也一样),如果在style中没有指定width属性,那用script得到style.width将为空字符串,

如果在style上设了值,不管是否指定单位px,得到的值将带单位px,不能直接用于计算.

 

以下是长针对document.body对象而言,如果是其他对象,那又不同

offsetWidth是网页可见区域宽(不包括滚动条和边线);

clientWidth也是网页的可见区域(但是包括滚动条和边线);

scrollWidth是网页正文全文宽(是针对正文而言,正常情况下和offsetWidth是同一个值,但是offsetHeigth和scrollHeight不是一样的值,scrollHeight有可能会大于clientHeight和为offsetHeight,也有可能小于clientHeight和offsetHeight);

availWidth是针对window.screen对象而言,显示为整个屏幕的可用宽度,一般和电脑的屏幕设置的分辨有关,正常情况下相等.

window.screen.availHeight是整个屏幕的可用高度,这个可用,当然指除了工具条,状态栏等高度.

window.screen.height和window.screen.width纯粹和分辨率相等.

 

如果不是document.body对象,是其他对象,如div.这几个属性会不一样

scrollWidth 是对象的实际内容的宽,不包边线宽度,会随对象中内容的多少改变(内容多了可能会改变对象的实际宽度)。clientWidth 是对象可见的宽度,不包滚动条等边线,会随窗口的显示大小改变。 offsetWidth 是对象的可见宽度,包滚动条等边线,会随窗口的显示大小改变。

注意:如果在层上不设width和height,要用脚本得到高和宽,则只能和scrollWidth和scrollHeight.

抱歉!评论已关闭.