JavaScript DOM节点类型之CDATASection类型


DOM节点中,有一种针对XML文档的节点类型CDATASection类型,该类型表示XML文档的CDATA区域。


  1. CDATASection类型
  2. CDATASection类型介绍

1. CDATASection类型

在XML文档中,创建一个CDATASection类型的节点可以使用以下两种方法:

// 使用Document对象创建
var cdata1 = document.createCDATASection('niefengjun.cn');

// 使用构造函数创建
var cdata2 = new CDATASection('niefengjun.cn');

一个CDATASection类型的节点具有以下特征:

  • nodeType值为4
  • nodeName值为"#cdata-section"
  • nodeValue值是CDATA区域中的内容
  • parentNode是一个DocumentElement类型
  • 没有子节点


2. CDATASection类型介绍

CDATASection类型与Comment类型类似,同样继承自Text类型,具有除splitText()方法外的所有字符串操作方法。

CDATA区域出现在XML文档中,大多数浏览器会把HTML文档中CDATA区域解为Comment类型或Element类型。

如,在HTML文档中有如下一个CDATA区域:

<div id="myDiv"><![CDATA[--CDATA的内容]]></div>

浏览器对其解析如下:

var myDiv = document.getElementById('myDiv');
console.log(myDiv.firstChild instanceof Comment);  // true