WEB开发网
开发学院网页设计JavaScript Jquery源码分析---DOM元素(中) 阅读

Jquery源码分析---DOM元素(中)

 2010-09-14 13:36:33 来源:WEB开发网   
核心提示: 分析了offset,我们可以发现offsetLeft、offsetTop与CSS中top,left的属性有相通性,Jquery源码分析---DOM元素(中)(6),offsetLeft、offsetTop只能取值,而我们可以通过CSS中top,left的属性来设定一个元素的相对其它元素的位

分析了offset,我们可以发现offsetLeft、offsetTop与CSS中top,left的属性有相通性,offsetLeft、offsetTop只能取值。而我们可以通过CSS中top,left的属性来设定一个元素的相对其它元素的位置(绝对定位,就是相对于body)。

Dom元素对于scroll提供了scrollWidth、scrollHeigth、scrollTop、scrollLeft。这一组是对于scroll的元素进行操作的。Scroll的Width、Heigth是指元素真实的宽度和高度,它包含被scroll起来的部分。而scrollTop、scrollLeft则是被卷起来的部分的大小。

Dom元素对于scroll提供了clientWidth、clientHeigth、clientTop、clientLeft。这一组是对于client进行操作的。clientWidth、clientHeigth是元素的内容可视区域的高度或宽度。包含padding,不包含scrollbar 、border、margin。可以看出是元素可视的区域。IE,FF是一样的。clientTop、clientLeft可以看做是topborder或left border的大小。

offsetParent的名字的元素能计算相对位移的父节点,那么对于CSS的定位方式,哪一些是可以计算位移呢,能计算元素和其父节点之间的位移量,首先要其父节点能定位。这个定位就是在CSS中能采用top,left来定其在文档的位置。Body是肯定可以的(0,0)。Body也是元素的终结offsetParent(没有找到就是它了),absolute、 relative、 fixed都采用可以top,left来定其在文档的位置。也是能计算其位置。而static是不需要top,left来设定其位置, Offset是相对已经定位的元素的位移。元素的offsetParent是其父辈节点中的postiont!= Static的节点。在IE中http://msdn.microsoft.com/zh-cn/library/system.windows.forms.htmlelement.offsetparent(VS.80).aspx,可以看到其不支持fixed的offsetParent。在mozilla中http://developer.mozilla.org/en/DOM/element.offsetParent,可以看出其给出的如果元素没有定位(non-positioned)就是body。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:Jquery 源码 分析

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接