1,获取屏幕的高度和宽度(屏幕分辨率):
window.screen.height window.screen.width
2,获取屏幕工作区域的高度和宽度(去掉状态栏):
window.screen.availHeight window.screen.availWidth
3,网页全文的高度和宽度:
document.body.scrollHeight document.body.scrollWidth
4,滚动条卷上去的高度和向右卷的宽度:
document.body.scrollTop document.body.scrollLeft
5,网页可见区域的高度和宽度(不加边线):
document.body.clientHeight document.body.clientWidth
6,网页可见区域的高度和宽度(加边线):
document.body.offsetHeight document.body.offsetWidth
本地测试当中: 在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高)
- 真是一件麻烦事情,其实就开发来看,宁可少一些对象和方法,不使用最新的标准要方便许多啊。
- 有时候需要取页面的底部, 就会用到document.body.clientHeight , 在HTML 标准中(这一句就能取到整个页面的高度, 不论body 的实际内容到底有多高, 例如, 1074*768 的分辨率, 页面最大化时, 这个高度约为720 , 即使页面上只有一句”hello world” , 也仍然取到720.
- 可是在XHTML中, 如果body 体中只有一行, 则document.body.clientHeight 只能取到那一行的高度, 约20px, 这时如何还想取到整个页面的高度, 就要用document.documentElement.clientHeight 来获取了.
- 原因是: 在HTML 中, body 是整个DOM 的根, 而在XHTML 中, document 才是根, body 不再是根, 所以取body 的属性时, 不能再取到整个页面的值.