Kwarin Browser XML DOM
- Yanar na biyu DOM yin gudanarwa
- Yanar na sau DOM yin gudanarwa
不同的浏览器在 XML DOM 中处理空文本节点的方式是不同的。
实例
下面的例子使用 XML 文件 books.xml。
函数 loadXMLDoc(),位于外部 JavaScript 中,用于加载 XML 文件。
- 显示节点列表的长度
- 本例显示了一个节点列表的长度。在 IE 和其他浏览器中,结果是不同的。
- Gudanarwa na kwanan gudanarwa
- 本例检查节点的 nodeType,且仅处理元素节点。
DOM 解析中的浏览器差异
所有现代浏览器都支持 W3C DOM 规范。
不过,浏览器之间是有差异的。重要的区别有两点:
- 加载 XML 的方式
- 处理空白和换行的方式
在 “Tsaiki XML DOM” 这一节,已经解释了加载 XML 的不同方式。
在本节中,我们将讲解处理空白和换行的不同方式。
DOM - 空白和换行
XML 经常在节点之间含有换行或空白字符。这是在使用简单的编辑器(比如记事本)时经常出现的情况。
下面的例子(由记事本编辑)在每行之间含有 CR/LF,在每个子节点之前含有两个空格:
<book> <title>Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book>
Firefox, kuma dukiyar da wasu dukiyar da ke aiki, za'a gudanar da kuduwar fasa da sauri a matsayin kudindin bayanin tekun, amma Internet Explorer ba za'a gudanar da haka.
Code guda na yana nuna gudanarwa na gaba na root element (books.xml) da kai kai na gaba:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.documentElement.childNodes; document.write("Number of child nodes: " + x.length);
Bai ka kai:
- Gudanarwa da loadXMLDoc() yi "books.xml"yi xmlDoc"
- Gudanarwa na root element
- Hanyar da ke cire gudanarwa na gaba
Hanyar da ke tashiya yadda kwallon kwaye ke yi. Firefox ke cire 9, amma IE ke cire 4.
Gudanarwa na kwanan gudanarwa
Idan kai kai da gudanarwa na element daga kwanan gudanarwa, kai kai gudanarwa. Gudanarwa na element shine 1:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.documentElement.childNodes; for (i=0;i<x.length;i++) { if (x[i].nodeType==1) { // only process element nodes document.write(x[i].nodeName); document.write("<br />"); } }
Bai ka kai:
- Gudanarwa da loadXMLDoc() yi "books.xml"yi xmlDoc"
- Gudanarwa na root element
- Gudanarwa guda a kai kai na gaba na kwanan gudanarwa. Idan gudanarwa na kwanan gudanarwa shine "1", to haka shine gudanarwa na element
- Yanar na biyu DOM yin gudanarwa
- Yanar na sau DOM yin gudanarwa