DOM知识点

本文详细介绍了DOM中关键属性如parentNode、offsetParent等的作用及浏览器兼容性问题,并解释了offsetTop、offsetLeft等属性如何确定元素的位置。同时,还探讨了不同浏览器下这些属性的表现差异。
1.父节点:parentNode无兼容性
2.离当前最近的一个有定位属性的父节点(position:relative):元


素.offsetParent:只读 属性;
①如果没有定位父级,默认是body;
②ie7以下的浏览器,如果当前元素没有定位,默认为body;
③ie7以下的浏览器,如果当前元素有定位,默认为html;
④IE7以下,如果当前元素触发了layout(如:当前元素中的css有zoom:1属性会


触发layout属性),那么offsetParent就会指向到这个触发了layout的父节点。
3.offsetTop与offsetLeft:
元素.offsetLeft[Top] : 只读 属性 
①当前元素到定位父级的距离(偏移值)即到当前元素的offsetParent的距离
②如果没有定位父级
offsetParent 为 body
offsetLeft/offsetTop 对应的父级为 html
③如果有定位父级
ie7以下:
如果自己没有定位,那么offsetLeft[Top]是到body的距离
如果自己有定位,那么就是到定位父级的距离
其他:到定位父级的距离
4.body的offsetParent为null,offsetLeft和offsetTop也为0
5.style.width : 样式宽
clientWidth : 可视区宽
offsetWidth: 占位宽
同理,height也和width类似
6.元素.getAttribute(属性名称); 方法 获取指定元素的指定属性的值
eg:oText.getAttribute('value')
元素.setAttribute(属性名称,属性值); 方法 给指定元素指定的属性设置值
eg:oText.setAttribute( 'value', 'hello' );
元素.removeAttribute(属性名称); 方法 移除指定的元素的指定的属性
oText.removeAttribute( 'value' );
1.用.和[]的形式无法操作元素的自定义属性,用getAttribute可以操作元素的自


定义属性
2.其他浏览器可以获取元素img属性src实际的值但ie7下还是会返回资源的绝对


路径,一般情况下尽量不要使用类似src属性来做判断值。
IE浏览器下img的style有getAttribute()方法,但不建议使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值