一、offsetWidth:元素的宽度,包括边框,内容,内边距。

二、offsetHeight:元素的高度,包括边框,内容,内边距。

三、offsetLeft:元素的X坐标(相对于最近已定位的祖先元素,如果没有则是窗口)。

四、offsetTop:元素的Y坐标(相对于最近已定位的祖先元素,如果没有则是窗口)。

五、clientWidth:元素的宽度,不包括边框,只包括内容和内边距。

六、clientHeight:元素的高度,不包含边框,只包括内容和内边距。

七、clientLeft:元素内边距的外边缘与外边框的水平距离(也就是左边框的宽度),如果有滚动条时,会包含滚动条的宽度。

八、clientTop:元素的内边距的外边缘与外边框的垂直距离(也就是上边距的宽度),如果有滚动条时,会包含滚动条的宽度。

示例:HTML代码:

    <div id="div1" style="width:500px;height:300px;margin-left:100px;margin-top:100px;  border:5px solid red;padding:3px;">
<p id="p1">我是第一个P</p>
<p id="p2">我是第二个P</p>
<p id="p3">我是第三个P</p>
<p id="p4">我是第四个P</p>
</div>

    javascript代码:

        window.onload = function () {
var div1 = document.getElementById("div1"); document.getElementById("p1").textContent = "div1的offsetWidth是:" + div1.offsetWidth;
document.getElementById("p2").textContent = "div1的offsetHeight是:" + div1.offsetHeight;
document.getElementById("p1").textContent += "; div1的offsetWidth是:" + div1.clientWidth;
document.getElementById("p2").textContent += "; div1的offsetHeight是:" + div1.clientHeight; document.getElementById("p3").textContent = "div1的offsetLeft是:" + div1.offsetLeft;
document.getElementById("p4").textContent = "div1的offsetTop是:" + div1.offsetTop;
document.getElementById("p3").textContent += "; div1的clientLeft是:" + div1.clientLeft;
document.getElementById("p4").textContent += " ; div1的clientTop是:" + div1.clientTop;
}

  实际效果如图所示:

            

九、scrollWidth  元素的内容区域加上内边距再加上水平溢出内容的尺寸。如果没有溢出则与clientWidth一样。也就是说scrollWidth-clientWidth就是溢出的尺寸。

十、scrollHeight  元素的内容区域加上内边距再加上垂直溢出内容的尺寸。如果没有溢出泽宇clientHeight一样。

十一、scrollLeft  当元素有滚动条时,此属性可以读取和设置滚动条的水平位置。

十二、scrollTop  当元素有滚动条时,此属性可以读取和设置滚动条的垂直位置。

HTML代码:

    <div id="div1" style="width:500px;height:300px;margin-left:100px;margin-top:100px;  
                border:5px solid red;padding:3px; overflow:scroll;">
<div id="div2" style="width:700px;height:500px;"> </div>
<input type="button" value="查看scroll" onclick="fun1()" />
</div>

javascript代码:

function fun1() {
var div1 = document.getElementById("div1")
alert("scrollWidth:" + div1.scrollWidth + ";scrollTop:" + div1.scrollTop + ";scrollLeft" + div1.scrollWidth + ";scrollTop" + div1.scrollTop);
}

效果如图:

          

十三、offsetParent  返回最近已定位的父元素。

  HTML代码:

    <div id="div1" class="div1Class" style="position:relative;">
<div id="div2">
</div>
</div>

  javascript代码:

        window.onload = function () {
var div2 = document.getElementById("div2")
alert(div2.offsetParent.className);
}

  执行结果:弹出   div1Class  也就是说,div2最近已定位的父元素的class="div1Class"

javascript之尺寸,位置,溢出的更多相关文章

  1. Android View各种尺寸位置相关的方法探究

    Android View各种尺寸位置相关的方法探究 本来想做一个View间的碰撞检测之类的. 动手做了才发现不是想象的那么简单. 首先,写好了碰撞检测的工具类如下: package com.mengd ...

  2. javascript代码放置位置对程序的影响

    在编写html文档时,javascript可以放置的位置有两个地方<head>或者<body>,但是放置的地方,会对 JavaScript 代码的正常执行会有一定影响.由于 H ...

  3. JS基础 复习: Javascript的书写位置

    爱创课堂JS基础 复习: Javascript的书写位置复习 js书写位置:body标签的最底部.实际工作中使用书写在head标签内一对script标签里.alert()弹出框.console.log ...

  4. javascript获取窗口位置、绝对位置、事件位置等

    有段时间没更新博客了,工作实在太忙了,加班加班再加班就是我们这个行业的常态吧...还好最近把工作进度完成了,终于有些空余时间了.关于<Javascript高级程序设计>系列,我并没有弃坑, ...

  5. JavaScript代码存放位置

    JavaScript代码存放位置 HTML的head中 HTML的body代码块底部(推荐) 由于Html代码是从上到下执行,如果Head中的js代码耗时严重,就会导致用户长时间无法看到页面,如果放置 ...

  6. javascript 获取页面尺寸/位置

    ************************************************************************//ie中如果全部不给定值则会都为零(宽和高在设置一个的 ...

  7. JavaScript中尺寸、坐标

    测试环境是IE8,Chrome38,Firefox40,下面是全局通用脚本打印代码 /** * 打印 */ function write(str) { document.write(str + '&l ...

  8. 嵌入javascript脚本的位置

    JavaScript脚本可以放在HTML文档任何需要的位置.一般来说,可以在<head>与</head>.<body>与</body>标记对之间按需要放 ...

  9. JavaScript中的位置屬性

    屏幕中的位置(直接使用,無需前綴): screenLeft.screenTop:除了火狐都支持 screenX.screenY: 窗口的大小(谷歌的inner=outer,直接使用,無需前綴): in ...

随机推荐

  1. qt之窗口换肤(一个qss的坑:当类属性发现变化时需要重置qss,使用rcc资源文件)

    1.相关文章 Qt 资源系统qt的moc,uic,rcc命令的使用 2.概要    毕业两年了,一直使用的是qt界面库来开发程序,使用过vs08.10.13等开发工具,并安装了qt的插件,最近在做客户 ...

  2. android:duplicateParentState属性解释

    android:duplicateParentState指的是当前控件是否跟随父控件的(点击.焦点等)状态 例:假设一Layout有两子View,对Layout进行监听点击事件:子ViewA一个设置d ...

  3. 【转】Android兼容性测试CTS --环境搭建、测试执行、结果分析

    原文网址:http://www.cnblogs.com/zh-ya-jing/p/4396918.html 为了确保Android应用能够在所有兼容Android的设备上正确运行,并且保持相似的用户体 ...

  4. 【转】Android源码下载过程的一些注意事项

    原文网址:http://www.360doc.com/content/14/0113/11/11948835_344809459.shtml 其它一些事项说明: 1.在源代码下载过程中,我们在源代码下 ...

  5. bzoj1751 [Usaco2005 qua]Lake Counting

    1751: [Usaco2005 qua]Lake Counting Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 168  Solved: 130 [ ...

  6. OS error set

    Failed to resolve/decode supposed IPv4 source addres Failed to resolve/decode supposed IPv4 source a ...

  7. Linux如何生成列表

    如何生成列表: 方法一:{1..100} 方法二:`seq [起始数 [步进长度]] 结束数` 1,...,100 declare -i SUM=0    integer    -x

  8. 【转】第一个MiniGUI程序:模仿QQ界面

    最近几天在学MiniGui,最好的学习方法就是实践,先写个练练笔.其实只是一个界面,不知道什么时候才能真正写个完整的程序.初次写GUI程序,感觉写得不好,还请高手来指教. //============ ...

  9. mycat实例(1)

    2016二月 22 置原 MyCat - 使用篇(1) 分类:数据库分库分表(Mycat等) (1126) (1) 数据库路由中间件MyCat - 使用篇(1) 基本概念 直接介绍概念太枯燥了,还是拿 ...

  10. 线程:CyclicBarrier同步工具类

    一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点.比如公司组织活动出去玩,需要在公司门口一起搭车去.每个人从家里出发去公司门口,到达的时间肯定先后不一样,所以公司的车要一直等待,等所有人 ...