一。clientwidth和clientheight

注:返回了元素大小,但没有单位,默认单位是 px,如果你强行设置了单位,比如 100em
之类,它还是会返回 px的大小。 (CSS获取的话,是照着你设置的样式获取 ).

对于元素的实际大小, clientWidth和 clientHeight理解方式如下:
1.增加边框,无变化;
2.增加外边距,无变化;
3.增加滚动条,最终值等于原本大小减去滚动条的大小;
4.增加内边距,最终值等于原本大小加上内边距的大小;

注:如果说没有设置任何 CSS的宽和高度, 那么非 IE浏览器会算上滚动条和内边距的
计算后的大小,而 IE浏览器则返回 0

二scrollwidth和scrollheight

注: 返回了元素大小, 默认单位是 px。 如果没有设置任何 CSS的宽和高度, 它会得到
计算后的宽度和高度。
注:对于元素的实际大小, scrollWidth和 scrollHeight理解如下:
1.增加边框,不同浏览器有不同解释:
a) Firefox和 Opera浏览器会增加边框的大小,
b) IE、 Chrome和 Safari浏览器会忽略边框大小,
c) IE浏览器只显示它本来内容的高度,
2.增加内边距, 最终值会等于原本大小加上内边距大小
3.增加滚动条, 最终值会等于原本大小减去滚动条大小
4.增加外边据,无变化。
5.增加内容溢出, Firefox、 Chrome和 IE获取实际内容高度, Opera比前三个浏览
器获取的高度偏小, Safari比前三个浏览器获取的高度偏大

三。offsetwidth和offsetheight

offsetWidth和 offsetHeight
这组属性可以返回元素实际大小,包含边框、内边距和滚动条。

注: 返回了元素大小, 默认单位是 px。 如果没有设置任何 CSS的宽和高度, 他会得到
计算后的宽度和高度。
注:对于元素的实际大小, offsetWidth和 offsetHeight理解如下:
1.增加边框,最终值会等于原本大小加上边框大小;
2.增加内边距,最终值会等于原本大小加上内边距大小;
3.增加外边据,无变化;
4.增加滚动条,无变化,不会减小;
PS:对于元素大小的获取,一般是块级(block)元素并且以设置了 CSS大小的元素较为
方便。 如果是内联元素(inline)或者没有设置大小的元素就尤为麻烦, 所以, 建议使用的时候
注意

js浏览器窗口的更多相关文章

  1. (转)JS浮动窗口(随浏览器滚动而滚动)

    原文:http://hi.baidu.com/aiyayaztt/item/4201c55a6b729dced2e10c79 JS浮动窗口(随浏览器滚动而滚动) 往往用于一些联系方式,互动平台模块,随 ...

  2. js关闭浏览器窗口事件

    js关闭浏览器窗口 js关闭浏览器窗口,不弹出提示框.支持ie6+,火狐,谷歌等浏览器. <html> <head /> <body> <script typ ...

  3. jquery和js检测浏览器窗口尺寸和分辨率

    jquery和js检测浏览器窗口尺寸和分辨率,转载自网络,记录备忘 <script type="text/javascript">$(document).ready(f ...

  4. 通过了解JS的clientX、pageX、screenX等方法来获取鼠标位置相对屏幕,相对浏览器窗口,相对文档的坐标详解

    在一些DOM操作中我们经常会跟元素的位置打交道,鼠标交互式一个经常用到的方面,令人失望的是不同的浏览器下会有不同的结果甚至是有的浏览器下没结果,这篇文章就上鼠标点击位置坐标获取做一些简单的总结,没特殊 ...

  5. java selenium常用API(WebElement、iFrame、select、alert、浏览器窗口、事件、js) 一

     WebElement相关方法 1.点击操作 WebElement button = driver.findElement(By.id("login")); button.clic ...

  6. js关闭浏览器窗口及检查浏览器关闭事件

    js关闭浏览器窗口,不弹出提示框.支持ie6+,火狐,谷歌等浏览器,下面以一个示例为大家详细介绍下具体的实现方法,感兴趣的朋友可以参考下   js关闭浏览器窗口 js关闭浏览器窗口,不弹出提示框.支持 ...

  7. js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)

    本文为大家详细介绍下使用js实现遮罩弹出层居中,且随浏览器窗口滚动条滚动,示例代码如下,感兴趣的朋友可以参考下, js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动) 下面看看我的原始代码: & ...

  8. js使浏览器窗口最大化(适用于IE的方法)

    这里使用的方法是IE的私有特性,只能在IE中有效.主要是window.moveTo和 window.resizeTo方法.       效果和点击最大化按钮差不多,有一点区别.点击最大化按钮后,浏览器 ...

  9. js获取浏览器窗口可视区域大小

    获得浏览器窗口的尺寸(浏览器的视口,不包括工具栏和滚动条)的方法: 一.对于IE9+.Chrome.Firefox.Opera 以及 Safari: •  window.innerHeight - 浏 ...

随机推荐

  1. CleanBlog(个人博客+源码)

    CleanBlog是一个高端(低调).大气(简洁)的个人博客系统,之前在网上看到了好多个人博客网站,感觉很酷的,自己也想搭建一个,最近 刚学完SSM(Spring/SpringMVC/MyBatis) ...

  2. 《2016ThoughtWorks技术雷达峰会----js爆炸下的技术选型》

    JS爆炸下的技术选型  刘尚奇    ThoughtWorks, 高级咨询师 JS每6个星期出现一个新框架,那么如何进行JS的选型.以下从四个方面来分析. 1.工具 NPM for all the t ...

  3. TortoiseSVN status cache占用CPU高

    进程占用CPU高 每次从SVN上更新资源时,电脑都会卡死,直到资源更新完.当要Commit资源时,SVN也会卡死资源管理器,如下图所示: 解决占用CPU高的问题 1.禁用图标缓存 2.排除路径和包含路 ...

  4. 命令行构建Unity项目

    自动任务构建 通常可以在桌面双击 Unity 图标,启动程序,但是,也可以通过命令行(例如,MacOS 终端或 Windows Command 窗口)运行程序.若使用这种方式启动 Unity,它将可以 ...

  5. [AIR] as3 之条件编译多平台妙用

    http://bbs.9ria.com/thread-418864-1-1.html 一直希望as3 可以支持条件编译,即满足A时编译函数1,满足B时则编译函数2. 最佳百度了之后,发现原来是可以实现 ...

  6. Java之单例模式

    单例模式: public class Person{ public static Person per//定义一个静态变量,用来储存当前类的对象 private Person()//构造方法私有化 { ...

  7. java 28 - 1 设计模式 之 面向对象思想设计原则和模版设计模式概述

    在之前的java 23 中,了解过设计模式的单例模式和工厂模式.在这里,介绍下设计模式 面向对象思想设计原则 在实际的开发中,我们要想更深入的了解面向对象思想,就必须熟悉前人总结过的面向对象的思想的设 ...

  8. js的client、scroll、offset详解与兼容性

    clientWidth:可视区宽说明:样式宽+padding参考:js的client详解 scrollTop : 滚动条滚动距离说明:chrome下他会以为滚动条是文档元素的,所以需要做兼容:var ...

  9. PHP-数组函数

    今天在写一个给第三方同步数据的接口时遇到一个这种情况,我有一大坨数据,但是第三方只需要其中的几个而已,不及思索的就开始foreach $ret = array(); foreach ($needPar ...

  10. SQL SERVER 系统库查询

    本文内容主要来自网络,如有错误请路过的大牛指点迷津. 1.sqlserver 数据库最大并发连接数 sqlserver的最大连接数虽然说是不限制,但实际的限制数量是32767,如果需要超出这个数量,一 ...