浅谈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 相关文章推荐
js使用DOM操作实现简单留言板的方法
Apr 10 Javascript
js实现可键盘控制的简单抽奖程序
Jul 13 Javascript
防止Node.js中错误导致进程阻塞的办法
Aug 11 Javascript
原生JS控制多个滚动条同步跟随滚动效果
Dec 22 Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
Aug 27 Javascript
解决vue 界面在苹果手机上滑动点击事件等卡顿问题
Nov 27 Javascript
js笔试题-接收get请求参数
Jun 15 Javascript
ES6 class的应用实例分析
Jun 27 Javascript
jQuery zTree插件快速实现目录树
Aug 16 jQuery
Node.js系列之安装配置与基本使用(1)
Aug 30 Javascript
vue循环中点击选中再点击取消(单选)的实现
Sep 10 Javascript
Vue 打包后相对路径的引用问题
Jun 05 Vue.js
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计算日期相差天数实例分析
2016/02/23 PHP
用 Javascript 验证表单(form)中的单选(radio)值
2009/09/08 Javascript
一个网马的tips实现分析
2010/11/28 Javascript
jQuery 拖动层(在可视区域范围内)
2012/05/24 Javascript
js中split函数的使用方法说明
2013/12/26 Javascript
引用其它js时如何同时处理多个window.onload事件
2014/09/02 Javascript
JS实现页面超时后自动跳转到登陆页面
2015/01/19 Javascript
浅谈JavaScript的事件
2015/02/27 Javascript
JavaScript中isPrototypeOf函数作用和使用实例
2015/06/01 Javascript
省市区三级联动下拉框菜单javascript版
2015/08/11 Javascript
基于JavaScript实现手机短信按钮倒计时(超简单)
2015/12/30 Javascript
jquery拖拽排序简单实现方法(效果增强版)
2016/02/16 Javascript
微信小程序 首页制作简单实例
2017/04/07 Javascript
[js高手之路]从原型链开始图解继承到组合继承的产生详解
2017/08/28 Javascript
基于jQuery实现无缝轮播与左右点击效果
2018/05/13 jQuery
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
[38:42]完美世界DOTA2联赛循环赛 Matador vs Forest BO2第二场 11.05
2020/11/05 DOTA
[29:59]完美世界DOTA2联赛PWL S3 Forest vs access 第二场 12.11
2020/12/13 DOTA
Python使用MySQLdb for Python操作数据库教程
2014/10/11 Python
Python中的getopt函数使用详解
2015/07/28 Python
20招让你的Python飞起来!
2016/09/27 Python
Python制作钉钉加密/解密工具
2016/12/07 Python
python的paramiko模块实现远程控制和传输示例
2017/10/13 Python
python使用pil库实现图片合成实例代码
2018/01/20 Python
django之使用celery-把耗时程序放到celery里面执行的方法
2019/07/12 Python
使用Python和Scribus创建一个RGB立方体的方法
2019/07/17 Python
关于CSS Tooltips(鼠标经过时显示)的效果
2013/04/10 HTML / CSS
德国圣伯纳德草药屋:Kräuterhaus Sanct Bernhard(有中文站)
2018/08/05 全球购物
美国唇部护理专家:Sara Happ
2019/06/19 全球购物
什么是"引用"?申明和使用"引用"要注意哪些问题?
2016/03/03 面试题
质检的岗位职责
2013/11/17 职场文书
行政执法队伍作风整顿剖析材料
2014/10/11 职场文书
狼牙山五壮士观后感
2015/06/09 职场文书
动态规划之使用备忘录来改进Javascript函数
2022/04/07 Javascript
js面向对象编程OOP及函数式编程FP区别
2022/07/07 Javascript
SqlServer常用函数及时间处理小结
2023/05/08 SQL Server