Latest web development tutorials

XML DOM 瀏覽器差異

DOM 解析中的瀏覽器差異

所有現代的瀏覽器都支持W3C DOM 規範。

然而,瀏覽器之間是有差異的。 一個重要的差異是:

  • 處理空白和換行的方式

DOM - 空白和換行

XML 經常在節點之間包含換行或空白字符。 這是在使用簡單的編輯器(比如記事本)編輯文檔時經常出現的情況。

下面的例子(由記事本編輯)在每行之間包含CR/LF(換行),在每個子節點之前包含兩個空格:

<book>
<title>Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>

Internet Explorer 將不會把空的空白或換行作為文本節點,而其他瀏覽器會。

下面的代碼片段顯示(books.xml 的)根元素擁有多少個子節點:

實例

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.documentElement.childNodes;
document.write("Number of child nodes: " + x.length);

嘗試一下»

實例解釋:

  1. 使用loadXMLDoc()把" books.xml "載入xmlDoc中
  2. 獲取根元素的子節點
  3. 輸出子節點的數量。 結果取決於您所使用的瀏覽器。 IE 瀏覽器會輸出4(提醒4 個子節點),而其他瀏覽器會輸出9(提醒9 個子節點)。