不同瀏覽器下DOM元素操作
IE下一般這樣做:
var xmlDom= new ActiveXObject("Microsoft.XMLDOM");
爲了兼容Firefox,需要修改爲:
if (window.ActiveXObject){
var xmlDom= new ActiveXObject("Microsoft.XMLDOM");
}
else{
if (document.implementation&& document.implementation.createDocument){
var xmlDom= document.implementation.createDocument("","",null);
}
}
在使用DOM操作XML文件時,我們可以使用Load方法直接加載文件路徑即可,在IE和Firefox下通用。但是如果傳入的是XML字符串,則在兩種瀏覽器下就會有所不同,IE下可以使用LoadXML方法直接調入下XML串,在Firefox下則不存在該方法,因此要使用W3CDom方式,具體如下:
var oParser=new DOMParser();
xmlDom=oParser.parseFromString(xmlStr,"text/xml");
爲兼容各種瀏覽器,我們這樣去做即可:
try{
xmlDom.loadXML(xmlStr);
}catch(e){
var oParser=new DOMParser();
xmlDom=oParser.parseFromString(xmlStr,"text/xml");
}