js offsetHeight 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属性,与clientWidth、offsetWidth、clientHeight、offsetHeight均无关)
测试代码:
CODE:
[Copy to clipboard]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[url=http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd[/url]">
<html xmlns="[url=http://www.w3.org/1999/xhtml]http://www.w3.org/1999/xhtml[/url]" lang="gb2312">
<head>
<head>
<title> 代码实例:关于clientWidth、offsetWidth、clientHeight、offsetHeight的测试比较 </title>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<meta name="author" content="枫岩,CnLei.y.l@gmail.com">
<meta name="copyright" content="[url=http://www.cnlei.com]http://www.cnlei.com[/url]" />
<meta name="description" content="关于clientWidth、offsetWidth、clientHeight、offsetHeight的测试比较" />
<style type="text/css" media="all">
body {font-size:14px;}
a,a:visited {color:#00f;}
#Div_CnLei {
width:300px;
height:200px;
padding:10px;
border:10px solid #ccc;
background:#eee;
font-size:12px;
}
#Div_CnLei p {margin:0;padding:10px;background:#fff;}
</style>
<script type="text/javascript">
function Obj(s){
return document.getElementById(s)?document.getElementById(s):s;
}
function GetClientWidth(o){
return Obj(o).clientWidth;
}
function GetClientHeight(o){
return Obj(o).clientHeight;
}
function GetOffsetWidth(o){
return Obj(o).offsetWidth;
}
function GetOffsetHeight(o){
return Obj(o).offsetHeight;
}
</script>
</head>
<body>
<p>点击下面的链接:</p>
<div id="Div_CnLei">
<p><a href=http://bbs.chinaunix.net/"javascript:alert(GetClientWidth('Div_CnLei'));">GetClientWidth();</a> <a href=http://bbs.chinaunix.net/"javascript:alert(GetClientHeight('Div_CnLei'));">GetClientHeight();</a></p>
<p><a href=http://bbs.chinaunix.net/"javascript:alert(GetOffsetWidth('Div_CnLei'));">GetOffsetWidth();</a> <a href=http://bbs.chinaunix.net/"javascript:alert(GetOffsetHeight('Div_CnLei'));">GetOffsetHeight();</a></p>
</div>
<div id="Description">
<p><strong>IE6.0、FF1.06+:</strong><br />
clientWidth = width + padding = 300+10×2 = 320<br />
clientHeight = height + padding = 200+10×2 = 220<br />
offsetWidth = width + padding + border = 300+10×2+10×2= 340<br />
offsetHeight = height + padding + border = 200+10×2+10×2 = 240</p>
<p><strong>IE5.0/5.5:</strong><br />
clientWidth = width - border = 300-10×2 = 280<br />
clientHeight = height - border = 200-10×2 = 180<br />
offsetWidth = width = 300<br />
offsetHeight = height = 200</p>
</div>
</body>
</html>
HTML控件offsetTop、scrollTop等属性
假设 obj 为某个 HTML 控件。
obj.offsetTop 指 obj 距离上方或上层控件的位置,整型,单位像素。
obj.offsetLeft 指 obj 距离左方或上层控件的位置,整型,单位像素。
obj.offsetWidth 指 obj 控件自身的宽度,整型,单位像素。
obj.offsetHeight 指 obj 控件自身的高度,整型,单位像素。
我们对前面提到的“上方或上层”与“左方或上层”控件作个说明。
例如:
<div id="tool">
<input type="button" value="提交">
<input type="button" value="重置">
</div>
“提交”按钮的 offsetTop 指“提交”按钮距“tool”层上边框的距离,因为距其上边最近的是 “tool” 层的上边框。
“重置”按钮的 offsetTop 指“重置”按钮距“tool”层上边框的距离,因为距其上边最近的是 “tool” 层的上边框。
“提交”按钮的 offsetLeft 指“提交”按钮距“tool”层左边框的距离,因为距其左边最近的是 “tool” 层的左边框。
“重置”按钮的 offsetLeft 指“重置”按钮距“提交”按钮右边框的距离,因为距其左边最近的是“提交”按钮的右边框。
以上属性在 FireFox 中也有效。
另外:我们这里所说的是指 HTML 控件的属性值,并不是 document.body,document.body 的值在不同浏览器中有不同解释(实际上大多数环境是由于对 document.body 解释不同造成的,并不是由于对 offset 解释不同造成的)。
http://hi.baidu.com/mingyue16/blog/item/f3e27aac05f1130e4b36d65a.html
http://www.cftea.com/c/2006/12/WOYNSH75QM4NPFRS.asp
珍藏多年的搜黄抠妹版软件-男人必备,今天拿出来分享要的速度:
电信官方下载点一
电信官方下载点二
网通官方下载点一
网通官方下载点二
js offsetHeight offsetWidth 解说相关推荐
- javascript之offsetHeight/offsetWidth
element.offsetHeight(element.offsetWidth) 是一个只读属性,它返回了该元素的像素高度,包含了边框和内边距(垂直方向),并且返回的是一个整数.如果存在且渲染的话, ...
- js利用offsetWidth和clientWidth来计算滚动条的宽度
大家好,清明节即将来来临,清明时节雨纷纷,路上行人欲断魂,借问酒家何处有,牧童遥指杏花村!!哈哈哈哈!言归正传,今天我主要介绍一个计算滚动条宽度的例子. 前言 其实,很多情况下滚动条宽度是不用计算的, ...
- 对于offsetWidth,offsetHeight,offsetLeft,offsetTop的理解
如何理解区分offsetWidth,offsetHeight,offsetLeft,offsetTop 在刚开始使用的时候总是不能理解这四个有什么不一样,用在哪里,因为这几个词真的太像了,emmm,总 ...
- js DOM Element属性和方法整理
js DOM Element属性和方法整理 节点操作,属性 1. childNodes.children 这两个属性获取到的子节点会根据浏览器的不同而不同的,所以一定要判断下nodeType是否为1. ...
- 妙味课堂 - 小试牛刀(JS)-
JS基础 HTML属性操作 五.JS数据类型.类型转换 5.1.JS数据类型 JS中的数据类型有哪些~? 数字.字符串.布尔.函数.对象(obj.数组[].json{}.null空 ).undefin ...
- 详情页html特效,js实现详情页放大镜效果
本文实例为大家分享了js实现详情页放大镜的具体代码,供大家参考,具体内容如下 1.html 2.css *{ margin:0;padding:0; } #small{ width:400px; he ...
- 相册左右滑动html,JS实现的相册图片左右滚动完整实例
本文实例讲述了JS实现的相册图片左右滚动效果.分享给大家供大家参考,具体如下: 执行左移右移函数: var $get = function(id) { return "string" ...
- js学习76-107
文章目录 一. DOM 获取一个元素 非常规的标签获取 getElementById(id获取) getElementsByClassName(class获取) getElementsByTagNam ...
- 2023前端面试题总结(html,css,js)
目录 HTML篇 1.HTML5常用的语义化标签有哪些?并写出你对语义化的理解? 2.列举HTML的block元素和inline元素 3.块元素和行内元素的区别? 4. iframe 是什么?有什么缺 ...
最新文章
- Win7下让MSN离开任务栏
- 数据结构-二叉树面试 常考
- sql server模糊查询、分组
- Servlet 3.0异步处理可将服务器吞吐量提高十倍
- 中职升高职c语言程序设计教程课后答案,中职C语言教学创新与实践论文
- 翻译(九)——Clustered Indexes: Stairway to SQL Server Indexes Level 3
- java访问mongodb_Java中获取MongoDB连接的方法详解
- 如何随机选取1000个关键字
- Intel保护模式下的保护机制,Descriptor Fields Used for Protection
- UIColor与十六进制字符串互转
- mfc大观之五、六(消息机制和消息运行)
- 如何在javascript中解析带有两个小数位的浮点数?
- k8s学习:部署 PHP + Redis 留言薄
- java web打印 闪退_tomcat闪退解决方案
- hackintosh黑苹果_如何构建用于编码的Hackintosh
- JAVA开发FPS透视_FPS 游戏实现D3D透视
- 年度最火的AOA蓝牙室内定位原理
- STM32硬件SPI时钟频率与时钟解析(基于逻辑分析仪的抓包试验)
- 每日英语好文翻译(11)
- IntelliJ IDEA初次创建简单的java项目--初学者使用详解