js 原生dom操作方法集合 想要的都在这里


一.遍历节点树(非方法类操作)

1.parentNode  获取父节点;

2.childNodes  子节点们 类数组; 包括文本节点,元素节点,注释节点,属性节点;

    通过nodeType区分

3.firstChild/lastChild  第一个子节点/最后一个子节点

4.nextSibling/previousSibling 后一个兄弟节点/前一个兄弟节点

二.遍历元素节点树

1.parentNode 父节点;

2.children   元素子节点

3.childElementCount === children.length 元素子节点的个数

4.firstElementChild/lastElementChild 第一个元素子节点/最后一个元素子节

5.nextElementSibling/previousElementSibling 后一个兄弟元素节点/前一个兄 弟元素节点

备注:以上遍历节点树的方法所有浏览器都兼容,但是遍历元素节点树的方法除 children 以外,ie9 及以下的浏览器都不兼容

三.节点四个属性

1..nodeName 元素的标签 只读;

2.nodeValue text 节点或 comment 节点的文本内容,可读写;

3.nodeType 该节点的类型,只读;

4.attributes 元素节点的属性集;

5.判断是有子节点 Node.hasChildNodes();

四.dom 结构树

1.DOM 基本操作 

增:

1)创建元素节点(即创建标签):document.createElement();

2)创建文本节点:document.createTextNode();

3)创建注释节点:document.createComment();

4)创建文档碎片节点:document.createDocumentFragment()

插:

1)appendChild() ;类似push 还有剪切功能;

2)父级.insertBefore(a, b)  (insert a before b);

删:

1)父级.removeChild() 父级删除自己的子节点;

2)e.remove 自杀 删除自己

替换

1)父级.replaceChild(new, origin)  ;

元素的一些属性:innerHTML innerText

例子:封装inserBefore方法 

Element.prototype.insertAfter = (newEle,targrtEle)=>{    let targetbefore = targrtEle.nextElementSibling;    targetbefore?this.appendChild(newEle):this.insertBefore(newEle,targetbefore);}


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。