Rumah  >  Artikel  >  hujung hadapan web  >  DOM中Node对象和Element对象之间的区别解析

DOM中Node对象和Element对象之间的区别解析

不言
不言asal
2018-09-01 11:39:501565semak imbas

本篇文章给大家带来的内容是关于DOM中Node对象和Element对象之间的区别解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

Node对象

Dom的标准规范中提供了Node对象,该对象主要提供了用于解析DOM节点树结构的属性和方法,DOM树结构主要是依靠节点进行解析,成为DOM节点树结构,Node对象是解析DOM节点树结构的主要入口,Node对象提供的属性和方法,可以实现遍历节点、插入节点等操作

判断节点类型

元素名.nodeName; - 得到标签名称(大写)
元素名.nodeType; - 得到元素的类型
元素名.nodeValue; - 得到元素的文本内容

获取父节点

节点名.parentNode; - 获取子节点的父节点
节点名.parentElement; - 获取其父元素节点

获取子节点

节点名.childNodes; - 获取父节点下的所有子节点
节点名.firstChild; - 获取父节点下第一个子节点
节点名.lastChild; - 获取父节点下最后一个子节点

获取相邻兄弟节点

节点名.previousSibling; - 获取上一个兄弟元素
节点名.nextSibling; - 获取下一个兄弟元素

appendChild()方法

父节点.appendChild(子节点); - 向父节点添加子节点,默认从最后面添加
父节点.insertBefore(新创建的节点,页面中的旧节点); - 向父元素中的指定子节点在其前面添加

删除节点

父节点.removeChild(子节点); - 删除指定的子节点

替换节点

父节点.replaceChild(新的子节点,目标节点); - 可以替换掉父节点中被选中的目标子节点

复制节点

被复制的目标节点.cloneNode(true); - true为深度克隆,会将节点的所有东西克隆过去,false为非深度克隆,不会克隆文本,默认为false

textContent属性

节点.textContent; - 输出节点里面的文本内容

Element对象

DOM的标准规范中提供了Element对象,该对象提供了HTML页面中所有元素所具有的属性和方法,DOM标准规范中提供了Node对象,主要是依靠DOM节点树结构访问和更新HTML页面的内容。而DOM标准规范中提供了Element对象,主要是依靠DOM元素树结构访问和更新HTML页面内容,所有的HTML页面的元素都是HTMLElement对象,而这个对象又是继承于Element对象的

获取子元素

父元素.firstElementChild; - 获取父元素中第一个子元素
父元素.lastElementChild; - 获取父元素中最后一个子元素

获取相邻兄弟元素

元素.previousElementSibling; - 获取元素的上一个兄弟元素
元素.nextElementSibling; - 获取元素的下一个兄弟元素

属性操作

元素.getAttribute('属性名称'); - 获取指定元素的指定属性
元素.setAttribute('属性名称','属性值') - 设置指定元素的属性名称以及属性值
元素.removeAttribute('属性名称'); - 删除指定元素的属性
元素.hasAttribute('属性名称'); - 判断指定元素指定属性是否存在,结果返回布尔值

innerHTML属性

元素.innerHTML; - 获取指定元素的HTML代码
父元素.innerHTML=HTML代码; - 给父元素添加HTML代码,直接把html代码写在字符串中,但是这个方法具有安全问题

相关推荐:

jquery对象和javascript对象即DOM对象相互转换_jquery

DOM和XMLHttpRequest对象的属性和方法,domxmlhttprequest

Atas ialah kandungan terperinci DOM中Node对象和Element对象之间的区别解析. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn