`

兼容在IE和Firefox浏览器下操作XML(英)

    博客分类:
  • XML
阅读更多
本文摘自http://www.w3schools.com,虽是英文版,但其脚本用法相信大家还是看得懂的,希望对大家编写基于xml的网页有所帮助。

To read and update - create and manipulate - an XML document, you will need an XML parser.


Microsoft's XML Parser

Microsoft's XML parser is a COM component that comes with Internet Explorer 5 and higher. Once you have installed Internet Explorer, the parser is available to scripts.

Microsoft's XML parser supports all the necessary functions to traverse the node tree, access the nodes and their attribute values, insert and delete nodes, and convert the node tree back to XML.

The following table lists the most commonly used node types supported by Microsoft's XML parser:

Node Type Example
Processing instruction <?xml version="1.0"?>
Element <drink type="beer">Carlsberg</drink>
Attribute type="beer"
Text Carlsberg

MSXML Parser 2.5 is the XML parser that is shipped with Windows 2000 and IE 5.5.

MSXML Parser 3.0 is the XML parser that is shipped with IE 6.0 and Windows XP.

The MSXML 3.0 parser features:

  • JavaScript, VBScript, Perl, VB, Java, C++, etc. support
  • Complete XML support
  • Full DOM and Namespace support
  • DTD and validation
  • Complete XSLT and XPath support
  • SAX2 support
  • Server-safe HTTP

To create an instance of Microsoft's XML parser with JavaScript, use the following code:

var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")

To create an instance of Microsoft's XML parser with VBScript, use the following code:

set xmlDoc=CreateObject("Microsoft.XMLDOM")

To create an instance of Microsoft's XML parser in an ASP page (using VBScript), use the following code:

set xmlDoc=Server.CreateObject("Microsoft.XMLDOM")

The following code loads an existing XML document ("note.xml") into Microsoft's XML parser:

<script type="text/javascript">
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
...
...
...
</script>

The first line of the script above creates an instance of the Microsoft XML parser. The third line tells the parser to load an XML document called "note.xml". The second line turns off asynchronized loading, to make sure that the parser will not continue execution of the script before the document is fully loaded.


XML Parser in Mozilla Browsers

Plain XML documents are displayed in a tree-like structure in Mozilla (just like IE).

Mozilla also supports parsing of XML data using JavaScript. The parsed data can be displayed as HTML.

To create an instance of the XML parser with JavaScript in Mozilla browsers, use the following code:

var xmlDoc=document.implementation.createDocument("ns","root",null)

The first parameter, ns, defines the namespace used for the XML document. The second parameter, root, is the XML root element in the XML file. The third parameter, null, is always null because it is not implemented yet.

The following code loads an existing XML document ("note.xml") into Mozillas' XML parser:

<script type="text/javascript">
var xmlDoc=document.implementation.createDocument("","",null);
xmlDoc.load("note.xml");
...
...
...
</script>

The first line of the script above creates an instance of the XML parser. The second line tells the parser to load an XML document called "note.xml".


Loading an XML File - A Cross browser Example

The following example is a cross browser example that loads an existing XML document ("note.xml") into the XML parser:

<html>
<head>
<script type="text/javascript">
var xmlDoc
function loadXML()
{
//load xml file
// code for IE
if (window.ActiveXObject)
  {
  xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
  xmlDoc.async=false;
  xmlDoc.load("note.xml");
  getmessage()
  }
// code for Mozilla, etc.
else if (document.implementation &&
document.implementation.createDocument)
  {
  xmlDoc= document.implementation.createDocument("","",null);
  xmlDoc.load("note.xml");
  xmlDoc.onload=getmessage
  }
else
  {
  alert('Your browser cannot handle this script');
  }
}
function getmessage()
{
document.getElementById("to").innerHTML=
xmlDoc.getElementsByTagName("to")[0].firstChild.nodeValue
document.getElementById("from").innerHTML=
xmlDoc.getElementsByTagName("from")[0].firstChild.nodeValue
document.getElementById("message").innerHTML=
xmlDoc.getElementsByTagName("body")[0].firstChild.nodeValue
}
</script>
</head>
<body onload="loadXML()" bgcolor="yellow">
<h1>W3Schools Internal Note</h1>
<p><b>To:</b> <span id="to"></span><br />
<b>From:</b> <span id="from"></span>
<hr />
<b>Message:</b> <span id="message"></span>
</p>
</body>
</html>

Try it yourself


Loading XML Text Into the Parser

Internet Explorer supports two ways of loading XML into a document object: the load() method and the loadXML() method. The load() method loads an XML file and the loadXML() method loads a text string that contains XML code.

The following code loads a text string into Microsoft's XML parser:

<script type="text/javascript">
var txt="<note>"
txt=txt+"<to>Tove</to><from>Jani</from>"
txt=txt+"<heading>Reminder</heading>"
txt=txt+"<body>Don't forget me this weekend!</body>"
txt=txt+"</note>"
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.loadXML(txt)
...
...
...
</script>

If you have Internet Explorer, you can try it yourself.

分享到:
评论

相关推荐

    javascript在IE和Firefox中兼容性问题

    本篇将主要探讨JavaScript在Internet Explorer (IE) 和Firefox之间的兼容性挑战,并通过给出的文件名列表解析这些测试用例所涉及的知识点。 1. **createDocument测试.html** 在IE和Firefox中,创建XML文档的方法...

    JS导入导出Excel 兼容IE、Firefox、Chrome等浏览器

    "JS导入导出Excel 兼容IE、Firefox、Chrome等浏览器"这一技术主题,聚焦于如何使用JavaScript(JS)在各种浏览器环境下处理Excel文件,包括古老的Internet Explorer(IE)、Firefox以及Chrome。下面我们将深入探讨这...

    兼容IE,firefox jquery 创建XML

    本文将深入探讨如何使用jQuery在Internet Explorer(IE)和Firefox这两个主要浏览器中创建XML,以及相关的JavaScript(js)技术。 首先,我们需要理解XML(eXtensible Markup Language),它是一种用于存储和传输...

    JS操作XML文件,兼容火狐、IE

    以下将详细介绍如何使用JavaScript操作XML文件,并确保在Firefox和IE之间具有良好的兼容性。 1. 创建XMLHttpRequest对象 在JavaScript中,XMLHttpRequest对象是与服务器进行异步通信的主要工具。对于IE5和6,我们...

    浏览器中操作XML文档[归纳].pdf

    大多数现代浏览器如IE、Firefox、Chrome、Safari和Opera都内置了XML解析器,通常是通过插件或本地实现的方式。这些解析器遵循DOM(Document Object Model)标准,将XML文档转换为一个树形结构,允许开发者通过...

    JS+XML 省市区三级联动 支持ie,firefox,Opera

    本方案利用JavaScript(JS)和Extensible Markup Language(XML)来实现这一功能,同时兼容Internet Explorer(IE)、Firefox以及Opera这三种主流浏览器。 首先,我们要理解JS(JavaScript)的作用。JavaScript是一...

    js操作XML文件(兼容FF,IE)

    本文将详细探讨如何在JavaScript中操作XML文件,并确保代码在Firefox和IE之间具有良好的兼容性。 1. **创建XML对象**: 在JavaScript中,可以使用`ActiveXObject`(仅适用于IE)或`DOMParser`(通用方法)来创建...

    DOM文档和Javascript的IE和Firefox兼容性

    "Javascript的IE和Firefox兼容性"则涉及到JavaScript在不同浏览器中的行为一致性问题。Internet Explorer(IE)和Mozilla Firefox是两个历史悠久且具有广泛用户基础的浏览器,它们对JavaScript的支持存在差异,尤其...

    兼容火狐、谷歌、IE等浏览器JS解析XML

    本人,以前也遇到各浏览器XML的兼容问题,然后改用Json解决了兼容问题,今天突然间有一个想法又重拾XML,终于完美解决

    IE Firefox Chrome 部分函数功能兼容代码

    将此JS文件包含在网页中,可实现3个浏览器中部分函数功能兼容!

    JS读取XML例子(兼容IE和FF).rar

    这个"JS读取XML例子(兼容IE和FF).rar"压缩包包含了一个示例,展示了如何在不依赖任何插件的情况下,使用JavaScript在Internet Explorer(IE)和Firefox(FF)等浏览器中读取XML文件。下面我们将详细探讨JavaScript...

    js实现图片滚动(ie火狐下都兼容)

    "js实现图片滚动(ie火狐下都兼容)"这个标题表明我们要探讨的是一个使用JavaScript编写的图片滚动脚本,该脚本能够在Internet Explorer和Firefox这两个主要的浏览器上正常工作,实现了跨浏览器兼容性。 首先,我们...

    纯js写的java搜索框,无数据库,IE,火狐兼容

    【标题】中的“纯js写的java搜索框,无数据库,IE,火狐兼容”意味着这是一个使用纯JavaScript编写的搜索功能,它不依赖任何后端数据库,并且可以在Internet Explorer(IE)和Firefox这两种不同的浏览器上正常运行...

    JS弹出式QQ在线客服插件,支持浏览器IE、FireFox、Chrome、Safari等主流浏览器

    而IE(Internet Explorer)虽然现在使用率较低,但在过去相当一段时间内是市场主导,因此兼容IE意味着插件有更广泛的适用性。 实现跨浏览器兼容性是一项挑战,因为每种浏览器可能对HTML、CSS和JavaScript的解释和...

    JS读取XML文件数据并以table形式显示数据的方法(兼容IE与火狐) .zip

    这个任务涉及到DOM解析、事件处理以及跨浏览器兼容性,尤其是考虑到像IE和Firefox这样的不同浏览器可能有不同的实现方式。下面我们将详细探讨如何实现这个功能。 首先,我们需要了解XML(Extensible Markup ...

    JS读取本地XML(支持IE和火狐)

    这个场景下,我们关注的重点是如何在不依赖用户权限提示的情况下,使用JS在Internet Explorer(IE)和Firefox这两个浏览器中读取XML文件。本文将详细介绍实现这一功能的技术要点。 首先,我们需要了解...

    firefox,IE 都兼容字符强制换行

    标题提到的"firefox,IE 都兼容字符强制换行"是指在Firefox和Internet Explorer(IE)这两种主流浏览器上实现文本强制换行的技术。虽然这两款浏览器在处理某些HTML和CSS特性时可能存在差异,但可以通过一些方法来实现...

    JS读取本地XML(支持IE和火狐和Google和Opea)

    对于Firefox、Chrome和Opera这些现代浏览器,它们遵循W3C标准,可以使用`FileReader` API或`fetch` API来读取本地XML文件。需要注意的是,这些浏览器通常不允许直接读取本地文件,除非文件是通过拖放、文件输入控件...

Global site tag (gtag.js) - Google Analytics