DOM本质
DOM,Document Object Model 文档对象模型,是针对HTML和XML文档的基础API,将HTML结构化成浏览器和js可识别。
DOM可以理解为,浏览器把拿到的html代码,结构化为一个浏览器能识别且js可操作的一个模型而已。
DOM是哪种基本的数据结构?
DOM是树形结构;
DOM节点操作
1、获取DOM节点
document.getElementById();
document.getElementsByTagName(); //返回对象数组集合,NodeList,类数组
document.getElementsByClassName(); //返回对象数组集合,NodeList,类数组
2、创建DOM节点
document.createElement(); //接受一个参数,即要创建元素的标签名
3、插入DOM节点
appendChild();//追加,
insertBefore();//第一个参数是待插入的节点,第二个参数是已存在的节点,新节点将插入在该节点的前面;
若将已存在文档中的一个节点再次插入,那个节点将自动从它当前的位置删除并在新位置插入,不用显式删除该节点。
4、删除DOM节点
n.parentNode.removeChild(n);//在n的父节点上调用removeChild,删除n
5、替换DOM节点
n.parentNode.replaceChild(b,n);//用b代替n
6、其他节点属性
parentNode //父节点
childNodes //子节点集合,NodeList,类数组,包含非元素节点的其他节点
children //子节点集合, 只包含元素节点
previousSibling //上一个节点
nextSibling //下一个节点
DOM操作常用的API有哪些?
这篇文章总结的很详细 https://www.cnblogs.com/clairexia/p/6635029.html
DOM节点的attr和property有何区别?
attribute是指html代码中文档标签的属性,有getAttribute()和setAttribute()方法;
property是js对象的属性。