JavaScript 一些 DOM 的知识点

一般不使用这个属性,除非用来遍历元素的特性。

// 继续上面的代码ele.attributes; // NamedNodeMap {0: id, 1: title, 2: data-test, length: 3}ele.attributes[0].nodeName;// "id"ele.attributes[0].nodeValue;// "container"
  • document.createElement(): 创建新元素节点
vardiv =document.createElement("div");console.log(div);// <div></div>console.log(typeofdiv);// objectdiv.id = "container";div.className = "a b c";console.log(div);// <div id="container" class="a b c"></div>
  • 元素遍历

我们前面说过,某个元素节点的 childNodes 属性返回的集合可能会包含注释节点、文本节点等我们一般不会去操作的节点,我们想要的只是元素节点。所以我们可以用下面的方法来达到我们的目的:

// 原理:通过 if 条件语句过滤掉不是元素节点的其它节点varele =document.getElementById("container");varlen = ele.childNodes.length;for(leti =0; i < len; i++){if(ele.childNodes[i].nodeType ===1){// 执行一些操作 ele.childNodes[i].style.color