XML DOM 瀏覽器差異

2018-02-11 16:07 更新

XML DOM 瀏覽器差異

在使用 DOM 時(shí),需要注意一點(diǎn):雖然它被主流瀏覽器所支持,但是還是有一定的差異的。

DOM 解析中的瀏覽器差異

所有現(xiàn)代的瀏覽器都支持 W3C DOM 規(guī)范。

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

  • 處理空白和換行的方式

DOM - 空白和換行

XML 經(jīng)常在節(jié)點(diǎn)之間包含換行或空白字符。這是在使用簡(jiǎn)單的編輯器(比如記事本)編輯文檔時(shí)經(jīng)常出現(xiàn)的情況。

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

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

Internet Explorer 將不會(huì)把空的空白或換行作為文本節(jié)點(diǎn),而其他瀏覽器會(huì)。

下面的代碼片段顯示(books.xml 的)根元素?fù)碛卸嗌賯€(gè)子節(jié)點(diǎn):

實(shí)例

xmlDoc=loadXMLDoc("books.xml");

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

嘗試一下 ?

實(shí)例解釋:

  1. 使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
  2. 獲取根元素的子節(jié)點(diǎn)
  3. 輸出子節(jié)點(diǎn)的數(shù)量。結(jié)果取決于您所使用的瀏覽器。IE 瀏覽器會(huì)輸出 4(提醒 4 個(gè)子節(jié)點(diǎn)),而其他瀏覽器會(huì)輸出 9(提醒 9 個(gè)子節(jié)點(diǎn))。
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)