js获取浏览器窗口大小、获取屏幕、浏览器、网页高度宽度

本文转至:http://hi.baidu.com/mac1230

 

近写了很多js代码,以下是在网上搜索到的资料,留着备用。

网页可见区域宽: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


HTML
精确定位
:scrollLeft,scrollWidth,clientWidth,offsetWidth
scrollHeight:
获取对象的滚动高度。

scrollLeft:
设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离

scrollTop:
设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离

scrollWidth:
获取对象的滚动宽度

offsetHeight:
获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度

offsetLeft:
获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置

offsetTop:
获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置

event.clientX
相对文档的水平座标

event.clientY
相对文档的垂直座标

event.offsetX
相对容器的水平坐标

event.offsetY
相对容器的垂直坐标

document.documentElement.scrollTop
垂直方向滚动的值

event.clientX+document.documentElement.scrollTop
相对文档的水平座标+垂直方向滚动的量


IE
FireFox 差异如下:


IE6.0
FF1.06+


clientWidth = width + padding

clientHeight = height + padding

offsetWidth = width + padding + border

offsetHeight = height + padding + border

IE5.0/5.5

clientWidth = width - border

clientHeight = height - border

offsetWidth = width

offsetHeight = height

(
需要提一下:CSS中的margin属性,与clientWidthoffsetWidthclientHeightoffsetHeight均无关)

网页可见区域宽: 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文档所在窗口的当前宽度。

实现代码

 

 

源程序解读

1)程序首先建立一个表单,包含两个文本框,用于显示窗口当前的宽度和高度,并且,其数值会随窗口大小的改变而变化。

2)在随后的JavaScript代码中,首先定义了两个变量winWidthwinHeight,用于保存窗口的高度值和宽度值。

3)然后,在函数findDimensions ( )中,使用window.innerHeightwindow.innerWidth得到窗口的高度和宽度,并将二者保存在前述两个变量中。

4)再通过深入Document内部对body进行检测,获取窗口大小,并存储在前述两个变量中。

5)在函数的最后,通过按名称访问表单元素,结果输出至两个文本框。

6)在JavaScript代码的最后,通过调用findDimensions ( )函数,完成整个操作。

 

js_browse_data

 

 

转至:http://hi.baidu.com/mac1230


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值