JS中的位置关系

JS中的位置关系

1、offsetParent:当前元素距离该子元素最近的进行过定位的父元素(position:absolute  relative fixed),若其父元素中不存在定位则offsetParent为:body元素;当元素的style.display='none'时,offsetParent返回null。由于offsetTop和offsetLeft是相对于页边距,因此offsetParent是非常有用的。

分为四种情况

(1)元素自身有fixed定位,父元素不存在定位,则offsetParent的结果为null(firefox中为:body,其他浏览器返回为null)

(2)元素自身无fixed定位,且父元素也不存在定位,offsetParent为<body>元素

(3)元素自身无fixed定位,且父元素存在定位,offsetParent为离自身最近且经过定位的父元素

(4)<body>元素的offsetParent是null

2、offsetTop:获取对象相对于由offsetParent属性指定的父坐标(css定位的元素或body元素)距离顶端的高度。

        obj.offsetTop    即当前对象到其父元素的高度

3、offsetHeight:获取对象相对于由offsetParent属性指定的父坐标(position非static)的高度。IE、Opera 认为 offsetHeight = clientHeight + 滚动条 + 边框。FF 认为 offsetHeight 是网页内容实际高度,可以小于 clientHeight。offsetHeight在新版本的FF和IE中是一样的,表示网页的高度,与滚动条无关,chrome中不包括滚动条。

        obj.offsetHeight    即当前对象的高度

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

5、scrollTop:位于对象最顶端和窗口中可见内容的最顶端之间的距离,简单地说就是滚动后被隐藏的高度。

6、clientTop:元素上边框的厚度,当没有指定边框厚底时,一般为0。

7、clientHeight:内容可视区域的高度;也就是说页面浏览器中可以看到内容的这个区域的高度,一般是最后一个工具条以下到状态栏以上的这个区域,与页面内容无关。

8、top:该属性一般对用过css定位的元素有效(position为“static”时为auto,不产生效果),定义了一个top属性有效的元素(即定位元素)的上外边距边界与其包含块上边界之间的偏移。
 

 *诸如left、clientLeft、offsetLeft、clientWidth、scrollWidth等,和top、height类似,不再赘述。

============================分割线=====================================

clientX、clientY:相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条。IE事件和标准事件都定义了这2个属性。

pageX、pageY:类似于event.clientX、event.clientY,但它们使用的是文档坐标而非窗口坐标。这2个属性不是标准属性,但得到了广泛支持。IE事件中没有这2个属性。

offsetX、offsetY:相对于事件源元素(target或srcElement)的X,Y坐标,只有IE事件有这2个属性,标准事件没有对应的属性。

screenX、screenY:相对于用户显示器屏幕左上角的X,Y坐标。标准事件和IE事件都定义了这2个属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值