获取子类元素,FirstElementChild、children和ChildNode等等

<div>111

           <div>  2  </div>

         123

</div>

目的是想要获得第一个div里面的“111”和“123”这个元素,作为字符串输出。

1、使用firstElementChild

var ad=document.getElementsByTagName('div')[0].firstChild;

console.log(ad);

获得的是text类型的111,就是如果标签之间有text元素或者是空白格也都会作为firstChild检测出来,类型是object text。

想要获得“123”,name就使用lastChild。


2、使用childNodes

使用childNodes,

var ad=document.getElementsByTagName("div")[0].childNodes;

console.log(ad);

获得的是Nodelist,用于遍历,可以用中括号或者是item()来获得各类元素;


3、使用firstElemetChild

var ad=document.getElementsByTagName("div")[0]firstElementChild;

console.log(ad);

而如果想要获得div里面的div元素,那么可以使用firstElementChild。只会获得Element元素。最后一个标签元素可以用lastElementChi获得。


4、使用children

var ad=document.getElementsByTagName("div")[0].children[0];

console.log(ad);

firstElementChild对于ie6.7.8都不兼容,而使用children不会获取第一位obj text类的元素,而是获取了Element的元素,不会获取所有节点元素。


5、获得obj text里面的字符。

可以使用.data 和wholeText方法获得text文本里面的字符值


5、元素element是note里面的一种类型。


节点类型 NodeType
元素element  1
属性attr  2
文本text  3
文档document  9

而dom扩展里,element类型有children等扩展属性。children是element的属性。而childNodes是Node的属性。
因为使用id选择器获得元素是element类的也是note类型的,所以可以使用children和childNodes属性。

可是用childNodes获得元素之后并不能使用children属性。

node使用children属性会获得undefined。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值