JS获得页面的高度和宽度

Javascript piniu 526浏览 0评论

网页可见区域宽: 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对象关于窗口的一些属性,这些属性的主要功能和用法如下。
要得到窗口的尺寸,对于不同的浏览器,需要使用不同的属性和方法:
若要检测窗口的真实尺寸,在Netscape下需要使用Window的属性;
在 IE下需要深入Document内部对body进行检测;
在DOM环境下,若要得到窗口的尺寸,需要注意根元素的尺寸,而不是元素。

Window对象的innerWidth属性包含当前窗口的内部宽度。
Window对象的innerHeight属性包含当前窗口的内部高度。
Document对象的body属性对应HTML文档的标签。
Document对象的documentElement属性则表示HTML文档的根节点。
document.body.clientHeight表示HTML文档所在窗口的当前高度。
document.body. clientWidth表示HTML文档所在窗口的当前宽度。

本人测试 IE / FireFox / chrome / opera 为:
document.body.clientWidth => 可视区宽度
document.body.clientHeight => 0 或 可视区高度
document.documentElement.clientWidth =>  BODY对象宽度
(注:可视区宽度+16px, 16px 是因为 padding上下左右为8px )
document.documentElement.clientHeight => BODY对象高度 
(注:可视区高度+16px, 16px 是因为 padding上下左右为8px )

document.body.offsetWidth =>  可视区域宽度 (包含边框)
document.body.offsetHeight =>  0 或 可视区高度 (包含边框)
document.documentElement.offsetWidth =>  BODY对象宽度
(注:可视区宽度+ 16px, 16px 是因为 padding上下左右为8px ) 
document.documentElement.offsetHeight => BODY对象高度 
(注:可视区高度+ 16px, 16px 是因为 padding上下左右为8px )  

注:firefox  为 8px 或 可视区高


发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • * 昵称:
  • * 邮箱: