js-DOM节点总结

DOM 节点

				 nodeType 属性	 	nodeValue 			nodeName
文档				9					Null			#document
元素节点				1					Null			大写的标签名
属性节点				2					属性值			属性名
文本节点				3					文本内容			#text
注释节点				8					注释内容			#comment
	


方法对比:
		方法名					兼容情况			返回值				能否兼容    能否返回数组
	getElementById()			都兼容			返回一个值				能			不能
	getElementsByTagName()		都兼容			HTMLCollection对象		能			能
	getElementsByName()			都兼容			NodeList对象			能			不能
	getElementsByClassName()	Ie9.0			HTMLCollection对象		能			能
	querySelector				Ie8.0			返回第一值				能			能
	querySelectorAll			Ie8.0			NodeList对象			能			能

关于元素节点方法

  • 创建元素节点: document.createElement(“p”);
  • 创建文本节点: document.createTextNode(“Hello World”);
  • 创建注释节点: document.createComment(“My personal comments”);
  • 插入节点: ParentNode.appendChild(newNode);
  • 添加节点:父元素.appendChild(“添加的子元素”) ; inserBefore(target,position) 在position之前插入target
  • 删除节点:removeChild:在指定的父节点里面删除指定子节点,并返回被删除节点,相当于剪切; remove:直接销毁自己
  • 替换节点:parent.replaceChild(new,origin); //上镜率不高,origin被“剪切”出来
  • 克隆节点:
    cloneNode(map)
    map为false,只复制当前节点
    map为true,复制当前节点及其所有子节点

在这里插入图片描述
所有dom对象都具有以下两大类属性,允许链式操作。

遍历节点树:

请注意子节点只算第一层的,孙子节点不在子节点的范畴内

​ parentNode–>父节点(最顶端的parentNode为#document 文档)

​ childNodes–>子节点们(判断有无 方法:node.hasChildNodes()) NodeList 对象

​ firstChild–>第一个子节点

​ lastChild–>最后一个子节点

​ nextSibling–>后一个兄弟节点

​ previousSibling–>前一个兄弟节点

这些节点中可能存在换行节点:对于父节点操作子节点会造成不便,所以有时候要基于元素节点遍历,过滤掉换行节点。

基于元素节点树的遍历:

parentElement :​ 返回当前元素的父元素节点(最顶端为html元素)【】IE 9 及以上支持

Children :children只返回当前元素的元素子节点 node.childElementCount === node.children.length 。 当前元素节点的子元素节点个数​【】IE6 到 IE8 完全支持 children 属性,但是,只返回元素节点和注释节点,IE9 以上版本只返回元素节点。

firstElementChild:​ 返回的是第一个元素节点;【】IE 9 及以上支持

lastElementChild: 返回的是最后一个元素节点;【】IE 9 及以上支持

previousElementSibling: 返回后一个兄弟元素节点 ;【】IE 不支持

nextElementSibling:返回后一个兄弟元素节点 ;【】IE 不支持

特殊节点的获取:

document.head:获取head标签
document.body:获取body标签
Document.documentElement:获取html标签
Document.links:获取所有的链接节点,返回HTMLCollection对象
Document.images:获取所有的img标签,返回HTMLCollection对象
Document.forms:获取所有的form标签, 返回HTMLCollection对象

获取元素内容

innerHTML:innerHTML 属性设置或返回表格行的开始和结束标签之间的 HTML。从对象的起始位置到终止位置的全部内容,包括HTML标签,同时保留空格和换行

innerText:从起始位置到终止位置的内容,但它去除Html标签,同时空格和换行也会去掉
outHTML:outerHTML指的是除了包含innerHTML的全部内容外, 还包含对象标签本身
outText

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值