XML DOM 浏览器差异

简介: 不同浏览器在解析XML DOM时存在差异,尤其是对待空白和换行的方式。W3C DOM规范被现代浏览器广泛支持,但例如,Internet Explorer不将空白或换行视为文本节点,而其他浏览器则会。在处理如记事本编辑的XML文件时,这些差异可能导致计数子节点时的结果不一致。一个示例显示,对于包含空格和换行的XML,IE会报告4个子节点,而其他浏览器可能报告9个。

XML DOM 浏览器差异

DOM 解析中的浏览器差异

所有现代的浏览器都支持 W3C DOM 规范。

然而,浏览器之间是有差异的。一个重要的差异是:

处理空白和换行的方式

DOM - 空白和换行

XML 经常在节点之间包含换行或空白字符。这是在使用简单的编辑器(比如记事本)编辑文档时经常出现的情况。

下面的例子(由记事本编辑)在每行之间包含 CR/LF(换行),在每个子节点之前包含两个空格:

Giada De Laurentiis
2005
30.00

Internet Explorer 将不会把空的空白或换行作为文本节点,而其他浏览器会。

下面的代码片段显示(books.xml 的)根元素拥有多少个子节点:
实例
xmlDoc=loadXMLDoc("books.xml");

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

尝试一下 »

实例解释:

使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
获取根元素的子节点
输出子节点的数量。结果取决于您所使用的浏览器。IE 浏览器会输出 4(提醒 4 个子节点),而其他浏览器会输出 9(提醒 9 个子节点)。

相关文章
|
1天前
|
XML JavaScript 数据格式
XML DOM 浏览器差异
现代浏览器虽支持W3C DOM,但在处理XML空白和换行时存在差异。IE不将空格或换行视为文本节点,而其他浏览器会。例如,一个XML文档中若有换行和空格,IE会显示4个子节点,而其他浏览器可能显示9个。
|
1天前
|
XML JavaScript 数据格式
XML DOM 浏览器差异
现代浏览器虽遵循W3C DOM规范,但在处理XML空白和换行时存在差异。IE不视为空白文本节点,而其他浏览器则会。例如,一个包含CR/LF和空格的XML段,在IE中会有4个子节点,非IE浏览器则有9个。此差异影响DOM解析和操作。
|
1天前
|
XML Web App开发 JavaScript
XML DOM 解析器
**XML DOM解析器将XML转换为JavaScript对象,允许在浏览器中操作XML。大多数浏览器内置此功能。
|
1月前
|
XML JavaScript 前端开发
xml文件使用及解析
xml文件使用及解析
|
1月前
|
XML 数据格式
小米备份descript.xml文件
小米备份descript.xml文件
43 0
|
1月前
|
XML Java 数据库连接
mybatis中在xml文件中通用查询结果列如何使用
mybatis中在xml文件中通用查询结果列如何使用
78 0
|
1月前
|
XML 数据格式 Windows
如何从xml文件创建R语言数据框dataframe
如何从xml文件创建R语言数据框dataframe
|
1月前
|
XML 前端开发 数据格式
BeautifulSoup 是一个 Python 库,用于从 HTML 和 XML 文件中提取数据
【5月更文挑战第10天】BeautifulSoup 是 Python 的一个库,用于解析 HTML 和 XML 文件,即使在格式不规范的情况下也能有效工作。通过创建 BeautifulSoup 对象并使用方法如 find_all 和 get,可以方便地提取和查找文档中的信息。以下是一段示例代码,展示如何安装库、解析 HTML 数据以及打印段落、链接和特定类名的元素。BeautifulSoup 还支持更复杂的查询和文档修改功能。
38 1
|
1天前
|
SQL XML 数据库
后端数据库开发高级之通过在xml文件中映射实现动态SQL
后端数据库开发高级之通过在xml文件中映射实现动态SQL
9 3
|
1天前
|
SQL XML Java
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
13 3