浅谈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 相关文章推荐
使用jQuery避免鼠标双击的解决方案
Aug 21 Javascript
javascript作用域链(Scope Chain)用法实例解析
Nov 30 Javascript
AngularJS自动表单验证
Feb 01 Javascript
JS中call/apply、arguments、undefined/null方法详解
Feb 15 Javascript
jQuery 常见小例汇总
Dec 14 Javascript
vue 实现 ios 原生picker 效果及实现思路解析
Dec 06 Javascript
vue移动端轻量级的轮播组件实现代码
Jul 12 Javascript
vue 返回上一页,页面样式错乱的解决
Nov 14 Javascript
JS严格模式原理与用法实例分析
Apr 27 Javascript
在vue中使用防抖函数组件操作
Jul 26 Javascript
Vue的v-model的几种修饰符.lazy,.number和.trim的用法说明
Aug 05 Javascript
JavaScript实现栈结构详细过程
Dec 06 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
桌面中心(三)修改数据库
2006/10/09 PHP
PHP函数preg_match_all正则表达式的基本使用详细解析
2013/08/31 PHP
php将图片保存入mysql数据库失败的解决方法
2014/12/27 PHP
javascript之ESC(第二类混淆)
2007/05/06 Javascript
JavaScript setTimeout和setInterval的使用方法 说明
2010/03/25 Javascript
javascript 类型判断代码分析
2010/03/28 Javascript
深入理解JSON数据源格式
2014/01/10 Javascript
windows8.1+iis8.5下安装node.js开发环境
2014/12/12 Javascript
jQuery中:selected选择器用法实例
2015/01/04 Javascript
JQuery插件jcarousellite的参数中文说明
2015/05/11 Javascript
PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)
2015/08/06 Javascript
JavaScript知识点总结(十)之this关键字
2016/05/31 Javascript
详解JavaScript节流函数中的Throttle
2016/07/16 Javascript
微信js-sdk地理位置接口用法示例
2016/10/12 Javascript
Javascript 判断两个IP是否在同一网段实例代码
2016/11/28 Javascript
Javascript 高性能之递归,迭代,查表法详解及实例
2017/01/08 Javascript
Bootstrap 过渡效果Transition 模态框(Modal)
2017/03/17 Javascript
Nodejs中使用captchapng模块生成图片验证码
2017/05/18 NodeJs
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
2017/06/05 Javascript
JS实现“全选”和&quot;全不选&quot;功能代码实例
2020/02/06 Javascript
JS求解两数之和算法详解
2020/04/28 Javascript
toString.call()通用的判断数据类型方法示例
2020/08/28 Javascript
[02:50]2014DOTA2 TI预选赛预选赛 大神专访第一弹!
2014/05/21 DOTA
[48:32]VGJ.T vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python3遍历目录树实现方法
2015/05/22 Python
python中获得当前目录和上级目录的实现方法
2017/10/12 Python
python实现字符串中字符分类及个数统计
2018/09/28 Python
python实现桌面气泡提示功能
2019/07/29 Python
Python  Django 母版和继承解析
2019/08/09 Python
Python Sympy计算梯度、散度和旋度的实例
2019/12/06 Python
利用python为PostgreSQL的表自动添加分区
2021/01/18 Python
高校辅导员推荐信范文
2013/12/25 职场文书
社区优秀志愿者先进事迹
2014/05/09 职场文书
小学教师2014年度工作总结
2014/12/03 职场文书
行政经理岗位职责
2015/04/15 职场文书
干货分享:推荐信写作技巧!
2019/06/21 职场文书