现在浏览器都内建了用于读取和操作XML的XML解释器。
解释器把XML读入内存,并把它转换为可被js访问的XML DOM对象。
解析器都含遍历XML树,访问,插入及删除节点的函数。
本节主要讲解如何创建可在IE及其他浏览器中运行的脚本。
1,微软的解析器加载XML方法
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");//创建空的XML文档对象
xmlDoc.async="false";//关闭异步加载,这样可确保在文档完整加载之前,解析器不会继续执行脚本
xmlDoc.load("book.xml");//告知解析器加载的文件名xmlDoc.loadXML(txt);//加载名为txt的字符串
2,FireFox及其他浏览器加载的方法
xmlDoc=document.implementation.createDocument("","",null);//新建一个空XML文档
xmlDoc.async="false";
xmlDoc.load("books.xml");parser=new DOMparser();xmlDoc=parser.parseFromString(txt,"text/xml");//加载名为txt的字符串
3,实例演示:一个跨浏览器的例子
代码
<html>
<body>
<script type="text/javascript">
text="<bookstore>"
text=text+"<book>";
text=text+"<title>Harry Potter</title>";
text=text+"<author>J K. Rowling</author>";
text=text+"<year>2005</year>";
text=text+"</book>";
text=text+"</bookstore>";
try //IE浏览器
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(text);
}
catch(e)
{
try //其他浏览器
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(text,"text/xml");
}
catch(e) {alert(e.message)}
}
document.write("xmlDoc is loaded, ready for use");
</script>
</body>
</html>
参考:w3school,希望本文给您带来帮助。
本小节完,待续……