一般来说,xml文件都是从外部载入的,那么我们如何只用js生成xml对象呢?下面的程序实现了这一点,只需要输入字符串形式的xml数据,就可以转换为xml对象,并且兼容firefox。
用这种方法,我们也可以在firefox中实现xml数据岛,即用xmp标签来装载xml字符串,然后调用createXml函数来生成xml。
由于firefox中不支持节点的.xml属性,所以需要给它添加该属性,使之与IE一致
复制代码 代码如下:
body>
xmp id=x1>
root>
node>test/node>
/root>
/xmp>
/body>
script>
if(!document.all)
XMLDocument.prototype.__defineGetter__("xml",function(){return new XMLSerializer().serializeToString(this)})
function createXml(str){
if(document.all){
var xmlDom=new ActiveXObject("Microsoft.XMLDOM")
xmlDom.loadXML(str)
return xmlDom
}
else
return new DOMParser().parseFromString(str, "text/xml")
}
xml=createXml(document.getElementById("x1").innerHTML)
alert(xml.xml)
/script>
您可能感兴趣的文章:- 如何判断出一个js对象是否一个dom对象
- 浅谈JS读取DOM对象(标签)的自定义属性
- javascript中html字符串转化为jquery dom对象的方法
- jquery对象和javascript对象即DOM对象相互转换
- javascript转换字符串为dom对象(字符串动态创建dom)
- javascript 删除dom对象的事件函数代码
- 解决JS内存泄露之js对象和dom对象互相引用问题