浅谈js的html元素的父节点,子节点


Posted in Javascript onAugust 06, 2016

parentNode和parentElement功能一样,childNodes和children功能一样。但是parentNode和childNodes是符合W3C标准的,可以说比较通用。而另外两个只是IE支持,不是标准,Firefox就不支持

示例:

"parentNode" 常用来获取某个元素的父节点. 把 parentNodes 理解为容器, 在容器中有个子节点 ,如下:

<div id="parent">
<b id="child">My text</b>
</div>

在上面的代码中, 你看到把"爹"作为一个 div 容器, 该容器中有个"孩子", 就是粗体的文字部分. 如果你打算用getElementById() 方法获取粗体元素并且想知道它"爹"是谁, 返回的信息将是一个 div. 演示下面的脚本如下:

<script type="text/javascript">
<!--

alert(document.getElementById"child").parentNode.nodeName);

//-->
</script>

用 parentNode 不一定只找到一个"爹", "儿子"也可以成为"爹", 如下面的例子 ...

<div id="parent">
<div id="childparent">
<b id="child">My text</b>
</div>
</div>

上面这段代码中有两个"爹"和两个"孩子". 头一个 div ( id "parent") 是第二个 div (childparent) 的"爹".   在 "childparent" 中有个粗体元素(id "child"), 是 "childparent" div 的"孩子". 那么, 如何访问到"爷爷" (id "parent")?如下:

<script type="text/javascript">
<!--

alert(document.getElementById("child").parentNode.parentNode.nodeName);


//-->
</script>

注意到两个 parentNode 连用了吗? "parentNode.parentNode". 第一个 parentNode 是 div ( id "childparent"), 因为我们要得到最外层的父元素, 所以另外加了一个 parentNode 就到了 div ( id "parent").

使用 parentNode 不只找到某个元素的 nodeName, 还会更多. 例如, 你可以获取包含大量元素的父节点, 并在末尾添加一个新的节点.   IE 有它自己的名称叫做 "parentElement", 对于交叉浏览器脚本建议使用 parentNode

以上这篇浅谈js的html元素的父节点,子节点就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript constructor和instanceof,JSOO中的一对欢喜冤家
May 25 Javascript
JS短路原理的应用示例 精简代码的途径
Dec 13 Javascript
jquery插件jTimer(jquery定时器)使用方法
Dec 23 Javascript
js 获取、清空input type=&quot;file&quot;的值示例代码
Feb 19 Javascript
javascript实现按回车键切换焦点
Feb 09 Javascript
jquery实现仿Flash的横向滑动菜单效果代码
Sep 17 Javascript
纯javascript移动优先的幻灯片效果
Nov 02 Javascript
javascript闭包(Closure)用法实例简析
Nov 30 Javascript
Javascript小技能总结(推荐)
Jun 02 Javascript
Spring Boot/VUE中路由传递参数的实现代码
Mar 02 Javascript
javascript系统时间设置操作示例
Jun 17 Javascript
详解在Angular4中使用ng2-baidu-map的方法
Jun 19 Javascript
JS触发服务器控件的单击事件(详解)
Aug 06 #Javascript
动态生成的DOM不会触发onclick事件的原因及解决方法
Aug 06 #Javascript
Google 地图获取API Key详细教程
Aug 06 #Javascript
关于动态生成dom绑定事件失效的原因及解决方法
Aug 06 #Javascript
深入理解JS DOM事件机制
Aug 06 #Javascript
jQuery插件Easyui设置datagrid的pageNumber导致两次请求问题的解决方法
Aug 06 #Javascript
用JS写的一个Ajax库(实例代码)
Aug 06 #Javascript
You might like
PHP中的CMS的涵义
2007/03/11 PHP
PHP实现微信网页授权开发教程
2016/01/19 PHP
动手学习无线电
2021/03/10 无线电
YUI 读码日记之 YAHOO.lang.is*
2008/03/22 Javascript
jQuery选择没有colspan属性的td的代码
2010/07/06 Javascript
一个js拖拽的效果类和dom-drag.js浅析
2010/07/17 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(四)用地图块拼成大地图
2013/01/23 Javascript
extjs3 combobox取value和text案例详解
2013/02/06 Javascript
编写js扩展方法判断一个数组中是否包含某个元素
2013/11/08 Javascript
jQuery validate插件submitHandler提交导致死循环解决方法
2016/01/21 Javascript
jQuery获取checkbox选中的值
2016/01/28 Javascript
AngularJS基础 ng-dblclick 指令用法
2016/08/01 Javascript
详解为Angular.js内置$http服务添加拦截器的方法
2016/12/20 Javascript
js实现hashtable的赋值、取值、遍历操作实例详解
2016/12/25 Javascript
JS中使用 after 伪类清除浮动实例
2017/03/01 Javascript
JSONP跨域请求
2017/03/02 Javascript
详解vue.js2.0父组件点击触发子组件方法
2017/05/10 Javascript
详解从angular-cli:1.0.0-beta.28.3升级到@angular/cli:1.0.0
2017/05/22 Javascript
Nodejs 和Session 原理及实战技巧小结
2017/08/25 NodeJs
JavaScript实现的超简单计算器功能示例
2017/12/23 Javascript
JS面向对象的程序设计相关知识小结
2018/05/26 Javascript
基于Element封装一个表格组件tableList的使用方法
2020/06/29 Javascript
python中requests库session对象的妙用详解
2017/10/30 Python
Python通用函数实现数组计算的方法
2019/06/13 Python
python pandas写入excel文件的方法示例
2019/06/25 Python
Django ORM 常用字段与不常用字段汇总
2019/08/09 Python
python如何使用socketserver模块实现并发聊天
2019/12/14 Python
如何基于Python Matplotlib实现网格动画
2020/07/20 Python
python 实现关联规则算法Apriori的示例
2020/09/30 Python
CSS3打造百度贴吧的3D翻牌效果示例
2017/01/04 HTML / CSS
Casadei卡萨蒂官网:意大利奢侈鞋履品牌
2017/10/28 全球购物
澳大利亚婴儿喂养品牌:Cherub Baby
2018/11/01 全球购物
小学生迎国庆演讲稿
2014/09/05 职场文书
幼儿园个人师德总结
2015/02/06 职场文书
2016年寒假政治学习心得体会
2015/10/09 职场文书
《天使的翅膀》读后感3篇
2019/12/20 职场文书