js 中children属性可以操作吗?比如document.getElementsByTagName('p').children.className='ab';

JavaScript023

js 中children属性可以操作吗?比如document.getElementsByTagName('p').children.className='ab';,第1张

可以操作children,但是你写的不太清楚

$(".tag-content").children("div").eq(_index).show().siblings("div").hide()

或者这样$(".tag-list").children("li").click(function(){

⑴写一个函数getElementChild(element),传入一个父节点element.

⑵判断DOM中element对象的children属性是否存在,存在则直接返回element.children,不存在则执行兼容代码.

⑶兼容代码思路:

①创建一个数组elementArr以便返回最终 [符合要求] 的子节点集合。

②调用element对象的childNodes属性,以获取其子节点集合。

③遍历子节点集合,对每一个子节点进行判断,如果节点类型为1(即节点类型为元素节点),则添加到elementArr返回数组中。

④返回数组elementArr

children是指元素的第一层子节点。

childNotes 也是指元素的第一层子节点,但是在高级浏览器中它还包括很多其它的类型,比如说文本节点等

所以说childNotes的到的子节点数要大与children的到的子节点说。比如说:

<ul>

    <ol></ol>

    <ol></ol>

</ul>

document.getElementsByTagName('ul')[0].children //2个子节点

document.getElementsByTagName('ul')[0].childNodes //5个子节点,包括2个元素节点,3个文本节点。