html里的ajax+js代码是这样的:
if(window.ActiveXObject)
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
else if(window.XMLHttpRequest)
var xmlDoc = new XMLHttpRequest();
xmlDoc.load("figures.xml");
var entries = xmlDoc.documentElement.childNodes;
var name=entries.item(0);
alert(name.text); //IE弹出提示框“姓名:XXX”,而FF就是不行
figures.xml代码:
<entries>
<name>姓名:XXX</name>
</entries>
这段代码结果就是IE弹出提示框“姓名:XXX”,而FF就是不行,用Firebug一看,说是“xmlDoc.load is not a function”,难道FF不支持.load 函数吗?怎么才能操作figures.xml里的内容,并让火狐支持啊?
------解决方案--------------------
XMLHttpRequest莫有load方法,加载xml文件firefox可以使用document.implementation&&document.implementation
var loadXML = function(xmlFile){// 加载xml文档,返回XMLDOM
var xmlDoc;
if(window.ActiveXObject)
{
xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
xmlDoc.async = false;
xmlDoc.load(xmlFile);
}
else if (document.implementation&&document.implementation.createDocument)
{
xmlDoc = document.implementation.createDocument('', '', null);
xmlDoc.load(xmlFile);
}
else
{
return null;
}
return xmlDoc;
}
------解决方案--------------------
如果不是通过http来访问,IE要生成XMLDOM,可以使用acx的Microsoft.XMLDOM来加载,这个对象能生成XMLDOM。
但是IE的acx的microsoft.xmlhttp对象请求本地xml文件,这样无法生成XMLDOM
你的另外一个帖子里面我说得更清楚点,你去看看