JavaScript加载xml文件兼容Chrome浏览器;Chrome浏览器没有实现XMLdocument.load方法,我们可以使用XmlHttpRequest,
下面是实例代码
/** * 跨浏览器解析xml * @param {Object} * @returns {fileXmlName} */ function parseXML(file) { var xmlDoc = null; try {//Internet Explorer 创建一个空的xml文档 xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async = false;//设置加载XML方式,关闭异步加载xml,使用同步方式加载XML文档 xmlDoc.load(file); //加载xml文件 } catch (e) { try {//Firefox, Mozilla, Opera, 创建一个空的xml文档 xmlDoc = document.implementation.createDocument("", "", null); xmlDoc.async = false;//设置加载XML方式,关闭异步加载xml,使用同步方式加载XML文档 xmlDoc.load(file); //加载xml文件 } catch (e) { try {//Google Chrome var xmlhttp = new window.XMLHttpRequest(); xmlhttp.open("get", file, false); xmlhttp.send(null); xmlDoc = xmlhttp.responseXML.documentElement; } catch (e) { alert("您的浏览器不能正常加载文件。请切换到兼容模式,或者更换浏览器"); return; //如果创建不成功,就直接返回,不往下走。 } } } return xmlDoc; }
具体实例参见:省市二级联动