帝王谷资源网 Design By www.wdxyy.com
使用JS读取xml文件,这里暂只考虑IE浏览器
step1 创建DOM对象
复制代码 代码如下:
function createDom() {
var xmlDoc = null;
try { //IE
if (typeof arguments.callee.activeXString != 'string') {
var versions = [
"MSXML2.DOMDocument.6.0",
"MSXML2.DOMDocument.3.0",
"MSXML2.DOMDocument",
"Microsoft.XMLDOM"
];
var i,
len;
for (i = 0, len = versions.length; i < len; ++i) {
try {
new ActiveXObject(versions[i]);
arguments.callee.activeXString = versions[i];
break;
} catch (ex) {
// ignore
}
}
}
xmlDoc = new ActiveXObject(arguments.callee.activeXString);
} catch (ex) { // other
xmlDoc = document.implementation.createDocument("", "", null);
}
return xmlDoc;
}
IE8以前,XmlDom都是利用ActiveX对象实现的,在IE9之后,IE开始支持Level 2级DOM,(其他支持Level 2 DOM的浏览器包括Firefox, Opera, Chrome, and Safari等)
可以像下面一样创建XML DOM对象:
复制代码 代码如下:
var xmldom = document.implementation.createDocument(namespaceUri, root, doctype);
step2 加载xml文件
复制代码 代码如下:
function loadXML(file) {
var dom = createDom();
if (dom == null) {
alert("load filed!");
}
try {
dom.async = false;
dom.load(file);
} catch (ex) {
alert("unsupport browser!");
}
return dom;
}
一个简单的例子:
复制代码 代码如下:
var xmlDom = loadXML("config.xml");
IE下,可以调用selectNodes() 和selectSingleNode()方法,利用XPath,快速定位节点
step1 创建DOM对象
复制代码 代码如下:
function createDom() {
var xmlDoc = null;
try { //IE
if (typeof arguments.callee.activeXString != 'string') {
var versions = [
"MSXML2.DOMDocument.6.0",
"MSXML2.DOMDocument.3.0",
"MSXML2.DOMDocument",
"Microsoft.XMLDOM"
];
var i,
len;
for (i = 0, len = versions.length; i < len; ++i) {
try {
new ActiveXObject(versions[i]);
arguments.callee.activeXString = versions[i];
break;
} catch (ex) {
// ignore
}
}
}
xmlDoc = new ActiveXObject(arguments.callee.activeXString);
} catch (ex) { // other
xmlDoc = document.implementation.createDocument("", "", null);
}
return xmlDoc;
}
IE8以前,XmlDom都是利用ActiveX对象实现的,在IE9之后,IE开始支持Level 2级DOM,(其他支持Level 2 DOM的浏览器包括Firefox, Opera, Chrome, and Safari等)
可以像下面一样创建XML DOM对象:
复制代码 代码如下:
var xmldom = document.implementation.createDocument(namespaceUri, root, doctype);
step2 加载xml文件
复制代码 代码如下:
function loadXML(file) {
var dom = createDom();
if (dom == null) {
alert("load filed!");
}
try {
dom.async = false;
dom.load(file);
} catch (ex) {
alert("unsupport browser!");
}
return dom;
}
一个简单的例子:
复制代码 代码如下:
var xmlDom = loadXML("config.xml");
IE下,可以调用selectNodes() 和selectSingleNode()方法,利用XPath,快速定位节点
标签:
IE,JS读取xml
帝王谷资源网 Design By www.wdxyy.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
帝王谷资源网 Design By www.wdxyy.com
暂无评论...
更新日志
2024年11月01日
2024年11月01日
- 群星.2023-非凡医者影视原声带【华纳】【FLAC分轨】
- 《寻找弗兰基》全成就一览
- 《传说法师2》EA评测:不是亲生的不心疼
- 《射戮骑士》评测:“幸存者!去杀穿硬核地狱!”
- 群星《名声(黑胶CD)》[WAV+CUE]
- 梅艳芳《女人花》SACD[原抓WAV+CUE]
- 孙露《因为想念》【WAV+CUE】
- 罗艺恒《What Could've Been》[FLAC/分轨][130.04MB]
- 罗熙楷《笼中鸟Caged Bird》[320K/MP3][72.27MB]
- 罗熙楷《笼中鸟Caged Bird》[FLAC/分轨][191.82MB]
- 英雄联盟s14晋级四强队伍是哪些 S14全球总决赛四强战队介绍
- 魔兽世界怀旧服专家模式什么时候开 怀旧服专家模式开启时间介绍
- 魔兽世界永久60级哪个职业最强 魔兽世界永久60级职业推荐
- 上海Major赛事专属版显示器首次亮相PNL高校决赛
- 寻找中国“龙” 感受乐元素的“科普力”