Javascript&Jquery获取浏览器和屏幕各种高度宽度方法总结及运用
《js篇》
Javascript获取浏览器和屏幕各种高度宽度方法总结
- document.body.clientWidth //网页可见区域宽(body)
- document.body.clientHeight //网页可见区域高(body)
- document.body.offsetWidth //网页可见区域宽(body),包括border、margin等
- document.body.offsetHeight //网页可见区域宽(body),包括border、margin等
- document.body.scrollWidth //网页正文全文宽,包括有滚动条时的未见区域
- document.body.scrollHeight //网页正文全文高,包括有滚动条时的未见区域
- document.body.scrollTop //网页被卷去的Top(滚动条)
- document.body.scrollLeft //网页被卷去的Left(滚动条)
- window.screenTop //浏览器距离Top
- window.screenLeft //浏览器距离Left
- window.screen.height //屏幕分辨率的高
- window.screen.width //屏幕分辨率的宽
- window.screen.availHeight //屏幕可用工作区的高
- window.screen.availWidth //屏幕可用工作区的宽
第一种情况就是宽高都写在样式表里,就比如#div1{height:120px;}。这中情况通过#div1.style.height拿不到高度,而通过#div1.offsetHeight才可以获取到高度。
第二种情况就是高是写在行内中,比如style="height:120px;",这中情况通过上述2个方法都能拿到宽度。
综上,
因为id.offsetWidth和id.offsetHeight无视样式写在样式表还是行内,所以我们获取元素宽和高的时候最好用这2个属性。注意如果不是写在行内style中的属性都不能通过id.style.atrr来获取。
现在的前端制作很少直接把样式写style里了,都是写在样式表里。如果你要获取的样式没有相对应的(就像#div1.style.width对 应#div1.offsetWidth),就只能分别针对不用浏览器来获取样式表的属性了,可以试着搜索“JS 获取样式属性”之类的。
CORE代码:
var o = document.getElementById("view");
var h = o.offsetHeight; //高度
var w = o.offsetWidth; //宽度
DEMO示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>min-height</title>
</head>
<body> <div id="demo">
demo
</div> <script type="text/javascript"> var ele_selector=document.getElementById('demo') var true_height=parseInt(selector.offsetHeight); //假设要设置的min-height的值为400 if (true_height<400) {
selector.style.height="400px";
}; </script> </body>
</html>
《jquery篇》
- 获取浏览器显示区域(可视区域)的高度 : $(window).height();
- 获取浏览器显示区域(可视区域)的宽度 :$(window).width();
- 获取页面的文档高度 $(document).height();
- 获取页面的文档宽度 :$(document).width();
- 浏览器当前窗口文档body的高度: $(document.body).height();
- 浏览器当前窗口文档body的宽度: $(document.body).width();
- 获取滚动条到顶部的垂直高度 (即网页被卷上去的高度) $(document).scrollTop();
- 获取滚动条到左边的垂直宽度 :$(document).scrollLeft();
- 获取或设置元素的宽度:$(obj).width();
- $(obj).height();
- scrollTop(), scrollLeft()
- 设置或返回已经滚动到元素的左边界或上边界的像素数。简单地说,就是设置或者获取匹配元素相对滚动条上侧或者左侧的偏移。
- 只有在元素有滚动条的时候元素的 CSS overflow 属性设置为 auto 的时候,这些像素才有用。
- 这些属性也只在文档的 <body> 或 <html> 标记上定义(这和浏览器有关),并且一起来制定滚动文档的位置。
- 注意,这些属性并不会指定一个 <iframe> 标记的滚动量。这是非标准的但却得到很好支持的属性
DEMO示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>min-height</title>
</head>
<body> <div class="demo">
demo
</div> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
$(function(){ var true_height=parseInt($(".demo").height()); //假设要设置的min-height的值为400 if (true_height<400) {
$(".demo").css("height","400px");
}; });
</script> </body>
</html>
参考资料:
http://hemin.cn/jq/cheatsheet.html
http://blog.csdn.net/makiyonn/article/details/8587353
http://blog.sina.com.cn/s/blog_51048da70101djoy.html
Javascript&Jquery获取浏览器和屏幕各种高度宽度方法总结及运用的更多相关文章
- Javascript、Jquery获取浏览器和屏幕各种高度宽度(单位都为px)
Javascript.Jquery获取浏览器和屏幕各种高度宽度 另外参见 http://www.cnblogs.com/top5/archive/2009/05/07/1452135.html ...
- Javascript、Jquery获取浏览器和屏幕各种高度宽度
Javascript: IE中:document.body.clientWidth ==> BODY对象宽度document.body.clientHeight ==> BODY对象高度d ...
- Javascript、Jquery获取浏览器和屏幕各种高度宽度[mark]
Javascript: IE中:document.body.clientWidth ==> BODY对象宽度document.body.clientHeight ==> BODY对象高度d ...
- JS、Jquery获取浏览器和屏幕各种高度宽度
网页可见区域宽:document.body.clientWidth网页可见区域高:document.body.clientHeight网页可见区域宽:document.body.offsetWidth ...
- JS、JQUERY 获取浏览器和屏幕各种高度宽度
好长时间没有更新博客了... 把我最近积累的一点知识点放上博客,以后以备不需之要,也给大家整理一下.. Javascript: IE中:document.body.clientWidth ==> ...
- C#-WebForm-Javascript、Jquery获取浏览器和屏幕各种高度宽度
Javascript: IE中:document.body.clientWidth ==> BODY对象宽度document.body.clientHeight ==> BODY对象高度d ...
- Jq_Js_Js、Jq获取浏览器和屏幕各种高度宽度
$(document).ready(function() {alert($(window).height()); //浏览器当前窗口可视区域高度alert($(document).he ...
- js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码
获取浏览器窗口的可视区域高度和宽度,滚动条高度有需要的朋友可参考一下.IE中,浏览器显示窗口大小只能以下获取: 代码如下复制代码 代码如下: document.body.offsetWidth doc ...
- JS 获取浏览器和屏幕宽高等信息代码
JS 获取浏览器和屏幕宽高等信息. 网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:doc ...
随机推荐
- 解决Wamp 开启vhost localhost 提示 403 Forbbiden 的问题!
非常奇怪的一个问题.我曾经从来都没有这样过!訪问 http://localhost/ 提示 403 Forbbiden. 我之前的设置一直都是这种: httpd.conf <Directory ...
- 【剑指Offer学习】【面试题56:链表中环的入口结点】
题目:一个链表中包括环.怎样找出环的入口结点? 解题思路 能够用两个指针来解决问题.先定义两个指针P1和P2指向链表的头结点.假设链表中环有n个结点,指针P1在链表上向前移动n步,然后两个指针以同样的 ...
- 在Centos 5.6下安装 redis
先引用redis官方(http://redis.io/) 的介绍: Redis is an open source, advanced key-value store.<br>It is ...
- [React Testing] className with Shallow Rendering
The React Shallow Renderer test utility lets us inspect the output of a component one level deep. In ...
- CentOS6.x升级MySQL版本号5.1到5.6
有一些虚拟机.云主机提供商仍然使用的是老版本号的安装套件. 预装的应用软件版本号非常低. 比方 techbrood.com 使用的云server,当中MySQL预装版本号为老版本号5.1.x. 而最新 ...
- 小学生之Java中的异常
1.异常try{ //可能出现异常的代码}catch(Exception ex){ }finally{ //释放资源}2.异常的高级应用开闭原则:对修改关闭,对新增开放3.什么是异常?解析:异常是代码 ...
- vsftpd安装、多用户配置
1.vsftpd安装 rpm -ivh vsftpd 2.2.2 11.el6_4.1.x86_x64.rpm 2.添加ftp用户 添加ftp用户组 groupadd ftpg 添加ftp用户 use ...
- C#摇奖程序
private void Form1_Load(object sender, EventArgs e) { //取消跨线层访问控件的判断 Control.CheckForIllegalCrossThr ...
- 高级 JsRender 模板功能
转自:http://msdn.microsoft.com/zh-cn/magazine/hh975379.aspx 尽管模板很强大,但有时模板引擎提供的现成标准功能无法满足您的需求. 您可能要转换数据 ...
- 树形dp入门
poj2057 某公司的上下级关系是一颗树状结构,每个人不能与他的上司同时出现,每个人有一个值,求最大值. 这个题需要注意的是如果不保存状态会超时,这似乎也是大部分dp应该注意的事情啊 #includ ...