JavaScript之DOM的理解学习归纳

DOM是一个针对HTML和XML文档的一个API,主要描绘了一个层次化的节点树

1、Node类型。JavaScript中所有的节点类型都继承自Node类型,因此所有节点类型都共享相同的基本属性和
方法。
常用的属性以及相关要点:
1)nodeType,node.nodeType,1表示元素节点,2表示元素的属性节点,3表示文本节点
2)nodeName,元素节点的nodeName是元素标签,文本节点的nodeName是#Text,Document的nodeName是
#document
3)nodeValue,元素和Document的nodeValue都是null,文本节点的nodeValue是纯文本,属性节点的
nodeValue是属性值

节点关系:childNodes,parentNode,firstChild,lastChild,nextSibling

操作节点:appendChild,insertBefore,replaceChild,removeChild,cloneNode

Document类型,document对象是HTMLDocument(继承自Document类型)的实例,
相关特殊方法:(可以设置可以获取)
1) document.documentElement
2) document.body
3) document.doctype document.title
4) document.URL document.domain(域名)
5) document.getElementById("id") document.getElementsByTagName("标签名")
document.getElementsByName()这个方法只有HTMLDocument类型才有,比如HTMLElement类型没有
6) write() writeln() open() close()

Element类型
常用标准特性:(可以设置可以获取)
1)element.id,title,lang,dir(语言的方向,从左至右ltr,从右至左rtl),className……特别的,
自定义属性用点方法失效,事件处理程序(以属性形式存在的时候)和style属性在点方法和
get/setAttribute方法上有不同
2)相对应的另一种设置或者获取特性(属性)的方法:getAttribute(),setAttribute(),
removeAttribute()
3)attributes属性,是Element类型的专属属性(其他类型的节点无法使用),遍历元素可以用。
4)document.createElement()

Text类型
常用操作文本的方法:
1) appendData()
2) deleteData()
3) insertData(offset,text) offset指定位置
4) replaceData(offset,count,text) count个数
5) splitText(offset)从指定位置将文本分成两部分,返回从切的位置到剩下的位置
6) substringData(offset,count)
7) document.createTextNode()

原创博客,欢迎讨论,转载请注明出处、链接
原文地址:https://www.cnblogs.com/hihao/p/6490782.html