DOM的基础知识点01

Posted yongjingsong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DOM的基础知识点01相关的知识,希望对你有一定的参考价值。

Document Object Model

DOM0

DOM1 1998 年 w3c标准

DOM2 2000 年( 主讲)

DOM3 2004 年( 主讲)

DOM4 2015 年

 

节点Node:元素、标签

节点名称 节点类型 节点的值

NodeName NodeType NodeValue

元素节点 标签名 1 null

文本节点 #text 3 文本内容

属性节点 属性名 2 属性值

通过ID值获取元素

get获取

Element元素

By通过

Id

获取节点

let artSpan = document.querySelector(`article span`) //通过选择器来查找,如果页面涉及到删除和添加标签时,就不要用querySelector来获取标签
console.log(artSpan);
?
?
let artSpanNode = document.querySelectorAll(`article span`)
console.log(artSpanNode);

以上两种方法的特点:1、IE8以下不支持 2、无法实时返回数据(如:删除、增加)

?
let spanNode = document.querySelector(`article>header>nav>span:nth-child(2)`)
console.log(spanNode);
?
//选择下一个
console.log(spanNode.nextSibling);//#text 文本节点
console.log(spanNode.nextElementSibling);//获取下一个元素节点(不是文本节点)
console.log(spanNode.nextSibling.nextSibling);//选中spanNode的下一个
?
//选择上一个
console.log(spanNode.previousSibling.previousSibling);//选中spanNode的上一个
console.log(spanNode.previousSibling);//#text 文本节点
console.log(spanNode.previousElementSibling);//获取上一个元素节点(不是文本节点)
?
//获取父元素
console.log(spanNode.parentNode);
?
let faNode = spanNode.parentNode;
//获取子元素
console.log(faNode.children);//nav的所有子元素(节点)
console.log(faNode.firstChild);//第一个节点,并且该节点是文本节点#text
console.log(faNode.lastChild);//第一个节点,并且该节点是文本节点#text

.innerhtml和.innerText

.innerText 把所有内容当字符串的方式显示到节点的内容中

.innerHTML 把所有内容当字符串的方式显示到节点的内容中

注:如果字符串中包含标签,innerHTML会识别成元素,innerText会当普通文本。

新增节点

step1:节点名称

书写方式:document.createElement("标签名");

let headerEle = document.createElement("header");
console.log(headerEle);

step2:元素内容(创建文本节点)

let headerText = document.createTextNode = "F68";
?

step3:添加文本节点

headerEle.appendChild(headerText);
console.log(headerEle.innerText);
?

step4:添加节点

artEle.appendChild(headerEle);

插入节点

第一步//获取父节点
let pEle = document.getElementsByClassName("box2")[0];
第二步//获取被插入节点 A
let emEle = document.getElementsByClassName("haha")[0];
第三步//创建插入节点 B
let spanEle = document.createElement("span");
第四步//插入新创建的节点
pEle.insertBefore(spanEle,emEle);

书写格式:

父节点.insertBefore(B,A)

以上是关于DOM的基础知识点01的主要内容,如果未能解决你的问题,请参考以下文章

day29—JavaScript中DOM的基础知识应用

JavaScript基础知识总结 18:dom基本操作

JavaScript基础知识总结 16:dom基本操作

2.ReactJS基础(虚拟DOM,JSX语法)

jquery 对象的 heightinnerHeightouterHeight 的区别以及DOM 元素的 clientHeightoffsetHeightscrollHeightoffset(代码片段

jQuery的DOM操作