首页 > 代码库 > offsetTop、clientTop、scrollTop、offsetTop

offsetTop、clientTop、scrollTop、offsetTop

好好看看下面那张图,基本上就没啥问题了!

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 相对文档的水平座标+垂直方向滚动的量

页可见区域宽: document.body.clientWidth;
网页可见区域高: document.body.clientHeight;
网页可见区域宽: document.body.offsetWidth   (包含边线的宽);
网页可见区域高: document.body.offsetHeight (包含边线的宽);
网页正文全文宽: document.body.scrollWidth;
网页正文全文高: document.body.scrollHeight;
网页被卷去的高: document.body.scrollTop;
网页被卷去的左: document.body.scrollLeft;
网页正文项目组上: window.screenTop;
网页正文项目组左: window.screenLeft;
屏幕辨别率的高: window.screen.height;
屏幕辨别率的宽: window.screen.width;
屏幕可用工作区高度: window.screen.availHeight;

 技术分享

假设 obj 为某个 HTML 控件。

obj.offsetLeft 指 obj 间隔左方或上层控件的地位,整型,单位像素。

obj.offsetHeight 指 obj 控件自身的高度,整型,单位像素。

筹办常识:offsetTop、offsetLeft、offsetWidth、offsetHeight

一、offsetTop 返回的是数字,而 style.top 返回的是字符串,除了数字外还带有单位:px。

三、若是没有给 HTML 元素指定过 top 样式,则 style.top 返回的是空字符串。

题目:clientHeight、offsetHeight和scrollHeight

浏览器分别为IE(Internet Explorer)、Opera、FF(FireFox)。

clientHeight

offsetHeight

FF 认为 offsetHeight 是网页内容实际高度,可以小于 clientHeight。

IE、Opera 认为 scrollHeight 是网页内容实际高度,可以小于 clientHeight。

简单地说

、 FF 认为 offsetHeight 和 scrollHeight 都是网页内容高度,只不过当网页内容高度小于便是 clientHeight 时,scrollHeight 的值是 clientHeight,而 offsetHeight 可以小于 clientHeight。

题目:scrollTop、scrollLeft、scrollWidth、scrollHeight

scrollTop 是“卷”起来的高度值

scrollLeft 也是类似事理。

而 scrollHeight 是内部元素的绝对宽度,包含内部元素的隐蔽的项目组。

scrollWidth 也是类似事理。

4、clientLeft

一向以来对offsetLeft,offsetTop,scrollLeft,scrollTop这几个办法很含混,花了一天的时候好好的进修了一下.得出了以下的成果:

1.offsetTop :

设置对象到页面顶部的间隔请用style.top属性.

当前对象到其上级的间隔.

3.offsetWidth :

与style.width属性的差别在于:如对象的宽度设定值为百分比宽度,则无论页面变大还是变小,style.width都返回此百分比,而offsetWidth则返回在不合页面中对象的宽度值而不是百分比值

与style.height属性的差别在于:如对象的宽度设定值为百分比高度,则无论页面变大还是变小,style.height都返回此百分比,而offsetHeight则返回在不合页面中对象的高度值而不是百分比值

5.offsetParent   :

重视.若是对象是包含在一个DIV中时,此DIV不会被当做是此对象的上级层,(即对象的上级层会跳过DIV对象)上级层是Table时则不会有题目.

获得绝对地位脚本代码

{var left = 0;

 var top   = 0;

 while(obj != document.body)

        left = obj.offsetLeft;

        top   = obj.offsetTop;

       obj = obj.offsetParent;}

6.scrollLeft :

便是在呈现了横向迁移转变条的景象下,迁移转变条拉动的间隔.

对象的最顶部到对象在当前窗口显示的局限内的顶边的间隔.

我们这里说说四种浏览器对 document.body 的 clientHeight、offsetHeight 和 scrollHeight 的申明,这里说的是 document.body

clientHeight

offsetHeight

FF 认为 offsetHeight 是网页内容实际高度,可以小于 clientHeight。

IE、Opera 认为 scrollHeight 是网页内容实际高度,可以小于 clientHeight。

简单地说

FF 认为 offsetHeight 和 scrollHeight 都是网页内容高度,只不过当网页内容高度小于便是 clientHeight 时,scrollHeight 的值是 clientHeight,而 offsetHeight 可以小于 clientHeight。

同理

clientWidth、offsetWidth 和 scrollWidth 的申明与上方雷同,只是把高度换成宽度即可。

 

 

offsetTop、clientTop、scrollTop、offsetTop