您的位置:首页 > Web前端 > JavaScript

JS操作XML,兼容IE,FF

2011-07-26 10:18 453 查看
读取返回的XML文档(有跨域的问题)

..........

http_request = new ActiveXObject("Microsoft.XMLHTTP");

..........

IE

var xml = http_request.responseXML;

var nodes = xml.getElementsByTagName("msg");

for(i=0;i<nodes .length;i++)

{

var UtorName = nodes [i].selectSingleNode("UtorName").text;

..........................

}

/////////////////////////////////////////////////////////////////////////////////////////////////

读取XML文档

xmlDoc=new ActiveXObject("Microsoft.XMLDOM");

xmlDoc.async="false"

xmlDoc.load("OlyCity.xml");

.............................

完全示例

var xmlDoc;

if(window.ActiveXObject)
{
//获得操作的xml文件的对象
xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
xmlDoc.async = false;
xmlDoc.load("baidu.xml");
if(xmlDoc == null)
{
alert('您的浏览器不支持xml文件读取,于是本页面禁止您的操作,推荐使用IE5.0以上可以解决此问题!');
window.location.href='/';
}
var nodes = xmlDoc.documentElement.childNodes;
for(var i=0;i<nodes.length;i++)
{
var imageUrl=nodes[i].selectSingleNode("data/display/image").text;
if(imageUrl=="")
{document.write("图片为空!<br>")}
else
{
var image=new Image();
image.src=imageUrl;
if(image.width > 180 || image.height > 180)
{document.write(nodes[i].selectSingleNode("loc").text+"<br>")}
}
}
document.write("over!")
}
else
{
var xmlDoc=document.implementation.createDocument("", "", null);
xmlDoc.async=false;
xmlDoc.load("baidu.xml");//dom就是xml对象了。

if(xmlDoc == null)
{
alert('您的浏览器不支持xml文件读取,于是本页面禁止您的操作,推荐使用IE5.0以上可以解决此问题!');
window.location.href='/';
}
var nodes = xmlDoc.documentElement.childNodes;
for(var i=0;i<nodes.length;i++)
{
//var imageUrl=nodes[i].getElementsByTagName("data")[0].childNodes[0].childNodes[6].firstChild.nodeValue;
//alert(imageUrl)
//第二种方法
var imageUrl=nodes[i].getElementsByTagName("data")[0].childNodes[0].getElementsByTagName("image")[0].textContent;
//alert(imageUrl)

if(imageUrl=="")
{document.write("图片为空!<br>")}
else
{
var image=new Image();
image.src=imageUrl;
if(image.width > 180 || image.height > 180)
{document.write(nodes[i].getElementsByTagName("loc")[0].firstChild.nodeValue+"<br>")}
}
}
document.write("over!")
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: