JavaScript操作DOM元素的childNodes和children区别
来源: 阅读:1247 次 日期:2015-04-02 16:22:36
温馨提示: 小编为您整理了“JavaScript操作DOM元素的childNodes和children区别”,方便广大网友查阅!

对于DOM元素,children是指DOM Object类型的子对象,不包括tag之间隐形存在的TextNode,而childNodes包括tag之间隐形存在的TextNode对象。

具体看一下针对children和childNodes在chrome环境下的测试:

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

</head>

<body>

<div id="div1" class="div">

<span id="s1" class="sp" lang="zh-cn">

</span>

</div>

</body>

<script type="text/javascript">

function test() {

var o = document.getElementById("div1");

var child = o.children;

console.log("div1.children运行结果:");

for(i = 0; i < child.length; i++){

console.log(child[i].tagName);

}

console.log("");

child = o.childNodes;

console.log("div1.childNodes运行结果:");

for(i = 0; i < child.length; i++){

console.log(child[i].tagName);

}

}

test();

</script>

</html>

测试结果如下:

div1.children运行结果:

SPAN

div1.childNodes运行结果:

undefined

SPAN

undefined

上面childNodes集合的结果中有两个undefined节点,这连个就是nodeType=3的TextNode。

如果把HTML代码写成如下样式,那么children和childNodes的结果就没有差别了。

<body>

<div id="div1" class="div"><span id="s1" class="sp" lang="zh-cn"></span></div>

</body>

对document、head、body及div等HTML元素实测未发现有其他差异

更多信息请查看IT技术专栏

更多信息请查看脚本栏目
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map