javascript获取网页宽高方法汇总


Posted in Javascript onJuly 19, 2015

document.body.clientWidth - 网页可见区域宽
document.body.clientHeight - 网页可见区域高

document.body.offsetWidth - 网页可见区域宽,包括边线和滚动条的宽
document.body.offsetHeight - 网页可见区域高,包括边线和滚动条的高[FF,chrom下是整个页面高,IE opera 下正常]

document.body.scrollWidth - 网页总宽
document.body.scrollHeight - 网页总高

document.body.scrollTop - 有滚动条的时候,向下拖动滚动条,上方不显示的那部分高度
document.body.scrollLeft - 同上

window.innerHeight - 浏览器窗口的内部高度

window.innerWidth - 浏览器窗口的内部宽度

window.screenTop - 网页正文部分上[网页文档的最上方距离屏幕最上方的距离,但FF不支持,Chrom,IE,Opera表现都不同,慎用]
window.screenLeft - 网页正文部分左[网页文档的最左方距离屏幕最左方的距离,但FF不支持,Chrom,IE,Opera表现都不同,慎用]

window.screen.height - 屏幕分辨率的高度
window.screen.width - 屏幕分辨率的宽度

window.screen.availHeight - 可用工作区高度[整个屏幕但不包括下方任务栏]
window.screen.availWidth - 可用工作区宽度[整个屏幕的宽度]

window.screen.clorDepth - 屏幕色彩,常用的16,32位等
window.screen.deviceXDPI - 屏幕像素/英寸【IE支持,其它不支持】

JavaScript 获取页面宽高的方法

<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高)

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
jQuery 选择器项目实例分析及实现代码
Dec 28 Javascript
jquery移除button的inline onclick事件(已测试及兼容浏览器)
Jan 25 Javascript
jQuery实现点击该行即可删除HTML表格行
Oct 17 Javascript
基于javascript实现动态显示当前系统时间
Jan 28 Javascript
jQuery mobile的header和footer在点击屏幕的时候消失的解决办法
Jul 01 Javascript
jQuery获取浏览器类型和版本号的方法
Jul 05 Javascript
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
Aug 04 jQuery
jquery插件开发之选项卡制作详解
Aug 30 jQuery
web前端vue之CSS过渡效果示例
Jan 10 Javascript
解决VUEX兼容IE上的报错问题
Mar 01 Javascript
Vuex的基本概念、项目搭建以及入坑点
Nov 04 Javascript
Vue+Vuex实现自动登录的知识点详解
Mar 04 Javascript
jQuery获取URL请求参数的方法
Jul 18 #Javascript
jQuery增加自定义函数的方法
Jul 18 #Javascript
jQuery插件简单实现方法
Jul 18 #Javascript
javascript实现页面刷新时自动清空表单并选中的方法
Jul 18 #Javascript
jQuery实现在最后一个元素之前插入新元素的方法
Jul 18 #Javascript
jquery实现用户信息修改验证输入方法汇总
Jul 18 #Javascript
js实现用户离开页面前提示是否离开此页面的方法(包括浏览器按钮事件)
Jul 18 #Javascript
You might like
《PHP边学边教》(02.Apache+PHP环境配置――下篇)
2006/12/13 PHP
PHP学习之输出字符串(echo,print,printf,print_r和var_dump)
2011/04/17 PHP
php 数据库字段复用的基本原理与示例
2011/07/22 PHP
php获取bing每日壁纸示例分享
2014/02/25 PHP
PHP与jquery实时显示网站在线人数实例详解
2016/12/02 PHP
PHP封装函数实现生成随机的字符串验证码
2017/01/24 PHP
PHP计算近1年的所有月份
2017/03/13 PHP
PHP实现类似于C语言的文件读取及解析功能
2017/09/01 PHP
PHP格式化显示时间date()函数代码
2018/10/03 PHP
jQuery boxy弹出层插件中文演示及使用讲解
2011/02/24 Javascript
快速查找数组中的某个元素并返回下标示例
2013/09/03 Javascript
jquery遍历select元素(实例讲解)
2013/12/31 Javascript
推荐一个封装好的getElementsByClassName方法
2014/12/02 Javascript
jQuery+css实现百度百科的页面导航效果
2014/12/16 Javascript
jquery插件bxslider用法实例分析
2015/04/16 Javascript
详解javascript实现瀑布流列式布局
2016/01/29 Javascript
jQuery实现的事件绑定功能基本示例
2017/10/11 jQuery
Vue.js 2.5新特性介绍(推荐)
2017/10/24 Javascript
jquery实现简易验证插件封装
2020/09/13 jQuery
python读文件逐行处理的示例代码分享
2013/12/27 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
Python2和Python3.6环境解决共存问题
2018/11/09 Python
Python爬虫动态ip代理防止被封的方法
2019/07/07 Python
Python获取当前脚本文件夹(Script)的绝对路径方法代码
2019/08/27 Python
django重新生成数据库中的某张表方法
2019/08/28 Python
Python如何用wx模块创建文本编辑器
2020/06/07 Python
用CSS3来实现社交分享按钮
2014/11/11 HTML / CSS
Html5中localStorage存储JSON数据并读取JSON数据的实现方法
2017/02/13 HTML / CSS
Funko官方商店:源自美国,畅销全球搪胶收藏玩偶
2018/09/15 全球购物
PatPat阿根廷:妈妈们的购物平台
2019/05/30 全球购物
师范生自荐信
2013/10/27 职场文书
2014端午节活动策划方案
2014/01/27 职场文书
六查六看自查材料
2014/02/17 职场文书
工作收入证明模板
2014/10/10 职场文书
使用Docker容器部署rocketmq单机的全过程
2022/04/03 Servers
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android