JavaScript之DOM操作(一)

这篇文章写于2017-3-19,所有例子基于Chrome 56.0.X。如果时间太久,请自行查阅MDN等获取最新规范内容。

1.节点类型

  从MDN上获取的最新情况

 

  一共12种节点类型,分别由12个数值常量来表示,不过我们最常用的是元素节点1和文本节点3,也是必须要彻底弄明白的。在这篇文章里,也主要讲解这两种类型的节点。

2.节点属性

1>nodeType、nodeName、nodeValue、textContent

nodeType用来获取节点的节点类型 var type = node.nodeType; 

我们可以用它来判断节点的类型,让指定类型的节点进行某些操作。

 

nodeName用来获取节点的节点名称 var str = node.nodeName; 

对于元素节点,总是返回大写的元素标签;对于文本节点,则返回#text。例:

 

nodeValue用来获取节点的值 var value = node.nodeValue; 

元素节点返回null;文本节点返回对应的文本内容。例:

 

textContent用来获取或者设置一个节点及其内部节点的文本内容。

var text = element.textContent; // 获取 
element.textContent = "this is some sample text"; // 设置

懒得写了,照扒一个MDN上的栗子:

复制代码
// 给定如下HTML:
//   <div id="divA">This is <span>some</span> text</div>

// 获得文本内容:
var text = document.getElementById("divA").textContent;
// |text| is set to "This is some text".

// 设置文本内容:
document.getElementById("divA").textContent = "This is some text";
// divA的HTML现在是这样的:
//   <div id="divA">This is some text</div>
复制代码

 

 

2>节点关系

 直接用图来表示吧,更容易理解一些:

<div id="parent">
  <p class="child">第一个元素子节点p</p>
  <p class="child">第二个元素子节点p</p>
</div>

父元素#parent下面有5个子节点,其中三个'',其实是换行符,也算作文本节点。

posted @ 2017-03-21 10:55  It奋斗小青年  阅读(177)  评论(0编辑  收藏  举报