html dom节点操作(获取/修改/添加或删除)


Posted in Javascript onJanuary 23, 2014

HTML DOM 是关于如何获取、修改、添加或删除 HTML 元素的标准。在 HTML DOM 中,所有事物都是节点。DOM 是被视为节点树的 HTML。

根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点:

整个文档是一个文档节点
每个 HTML 元素是元素节点
HTML 元素内的文本是文本节点
每个 HTML 属性是属性节点
注释是注释节点

HTML DOM 将 HTML 文档视作树结构。这种结构被称为节点树:
HTML DOM Tree 实例

http://www.w3school.com.cn/i/ct_htmltree.gif

通过 HTML DOM,树中的所有节点均可通过 JavaScript 进行访问。所有 HTML 元素(节点)均可被修改,也可以创建或删除节点。

所有 HTML 元素被定义为对象,而编程接口则是对象方法和对象属性。

一:获取元素节点方法:

1.var node = document.getElementById("nodeId");

2.var nodelist = document.getElementsByClassName("nodeclassname");

3.var nodelist = document.getElementsByTagName("nodetagname");

二:获取到元素节点以后我们可以对他进行的操作:1.对自身的操作。2.对子节点的操作。3.对兄弟节点的操作。4.对父节点的操作

2.1. 删除自身:node.parentNode.removeChild(node);

2.2.判断是否有子节点:var boolean = node.hasChildNodes();

获取子节点列表:var childList = node.childNodes;

获取节点元素类型:var nodetype = node.nodeType; var nodename = node.nodeName;

删除子节点。node.removeChild(childNode);

在子节点尾部插入一个子节点:node.appendChild(childNode);

在子节点收不插入一个子节点:node.insertBefore(childNode);

用A节点替换B节点:node.replaceChild(A,B);

2.3.node.nextSibling获取相邻的下一个兄弟节点

node.previousSibling获取相邻的上一个兄弟节点

2.4 . 获取父节点node.parentNode

Javascript 相关文章推荐
基于json的jquery地区联动效果代码
Jul 06 Javascript
JavaScript Memoization 让函数也有记忆功能
Oct 27 Javascript
javascript中关于break,continue的特殊用法与介绍
May 24 Javascript
根据选择不同的下拉值出现相对应的文本输入框
Aug 01 Javascript
使用iframe window的scroll方法控制iframe页面滚动
Mar 05 Javascript
javascript基于HTML5 canvas制作画箭头组件
Jun 25 Javascript
12306验证码破解思路分享
Mar 25 Javascript
jQuery实现的给图片点赞+1动画效果(附在线演示及demo源码下载)
Dec 31 Javascript
jquery实现网站列表切换效果的2种方法
Aug 12 Javascript
Angular使用ng-messages与PHP进行表单数据验证
Dec 28 Javascript
VUE + UEditor 单图片跨域上传功能的实现方法
Feb 08 Javascript
详解vue2.0 不同屏幕适配及px与rem转换问题
Feb 23 Javascript
解决jquery插件冲突的问题
Jan 23 #Javascript
js实现日期级联效果
Jan 23 #Javascript
js日期、星座的级联显示代码
Jan 23 #Javascript
js根据日期判断星座的示例代码
Jan 23 #Javascript
jQuery中Dom的基本操作小结
Jan 23 #Javascript
利用js正则表达式验证手机号,email地址,邮政编码
Jan 23 #Javascript
js验证电话号码与手机支持+86的正则表达式
Jan 23 #Javascript
You might like
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
2014/11/18 PHP
PHP入门教程之数组用法汇总(创建,删除,遍历,排序等)
2016/09/11 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
PHP+MySql实现一个简单的留言板
2020/07/19 PHP
用js遍历 table的脚本
2008/07/23 Javascript
jquery提升性能最佳实践小结
2010/12/06 Javascript
jquery控制页面部分刷新的方法
2015/06/24 Javascript
Angularjs 动态添加指令并绑定事件的方法
2017/04/13 Javascript
利用JavaScript在网页实现八数码启发式A*算法动画效果
2017/04/16 Javascript
JavaScript requestAnimationFrame动画详解
2017/09/14 Javascript
微信小程序使用npm包的方法步骤
2019/08/13 Javascript
vue组件中实现嵌套子组件案例
2020/08/31 Javascript
nginx配置域名后的二级目录访问不同项目的配置操作
2020/11/06 Javascript
[08:54]DOTA2-DPC中国联赛 正赛 Aster vs LBZS 选手采访
2021/03/11 DOTA
在Django中使用Sitemap的方法讲解
2015/07/22 Python
用生成器来改写直接返回列表的函数方法
2017/05/25 Python
Python基础知识_浅谈用户交互
2017/05/31 Python
Windows下的Jupyter Notebook 安装与自定义启动(图文详解)
2018/02/21 Python
基于Django URL传参 FORM表单传数据 get post的用法实例
2018/05/28 Python
Python实现程序判断季节的代码示例
2019/01/28 Python
python flask安装和命令详解
2019/04/02 Python
python统计指定目录内文件的代码行数
2019/09/19 Python
python tkinter控件布局项目实例
2019/11/04 Python
python cv2读取rtsp实时码流按时生成连续视频文件方式
2019/12/25 Python
pytorch中交叉熵损失(nn.CrossEntropyLoss())的计算过程详解
2020/01/02 Python
Python生成词云的实现代码
2020/01/14 Python
Python 多进程、多线程效率对比
2020/11/19 Python
H&M美国官网:欧洲最大的服饰零售商
2016/09/07 全球购物
加拿大在线旅游公司:Flighthub
2019/03/11 全球购物
J2EE模式面试题
2016/10/11 面试题
应届优秀本科大学毕业生自我鉴定
2014/01/21 职场文书
期末自我鉴定
2014/01/23 职场文书
《兰亭集序》教学反思
2014/02/11 职场文书
2015年大学生社会实践评语
2015/03/26 职场文书
CSS巧用渐变实现高级感背景光动画
2021/12/06 HTML / CSS
python读取并查看npz/npy文件数据以及数据显示方法
2022/04/14 Python