firefox读取xml问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 20:44:43
var isIE = !! document.all;
function parseXML(xmlContent)
{
var xmlDoc;
if(isIE)//for ie
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(xmlContent);
return xmlDoc;
}
else //for firefox
{
xmlDoc = new DOMParser();
var XmlDom = xmlDoc.parseFromString(xmlContent,"text/xml");
return XmlDom;
}
}

function loadxml()
{
var xmlObj = parseXML('css.xml').documentElement;
var nodes = xmlObj.childNodes;
for(var i=0;i<nodes.length;i++)
{
var strhtml=document.getElementById('show').innerHTML;
document.getElementById('show').innerHTML=strhtml+nodes[i].nodeName+",";//列出所有节点名
}
}

ie的结果是 Record,Record,Record, 是正确的 nodes.length是3
firefox的结果是 #text,sourcetext, 不知是什么意思 nodes.length是2

希望能帮帮我

// 兼容浏览器读取xml
function getxml(strxml)
{
var xmlDoc=null;
if (window.ActiveXObject)
{//ie
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}
else if (document.implementation.createDocument)
{//Mozilla, Firefox, Opera, etc.
xmlDoc=document.implementation.createDocument("","",null);
}
xmlDoc.async=false;
xmlDoc.load(strxml);
return xmlDoc;
}
function getNodeText(obj)
{
if(!obj)
{
return "";
}
if(obj.textContent)
{
return obj.textContent;
}

if(obj.firstChild)
{
obj=obj.firstChild;
}
if(obj.nodeValue)
{
return obj.nodeValue;
}
if(obj.data)
{
return obj.data;
}
return "";

}

firefox