一、前言

(function (window) {
if (!window.jasen) {
window.jasen = {};
} if (!window.jasen.core) {
window.jasen.core = {};
} //------------------------------------------------
// XML operation below.
//------------------------------------------------
if (!window.jasen.core.Xml) {
window.jasen.core.Xml = {};
} if (typeof jasen.core.Xml != "object") {
throw new Error("Invalid entity jasen.core.Xml!");
} function createXmlDocument() {
//IE
if (window.ActiveXObject) {
return new ActiveXObject("Microsoft.XMLDOM");
}
//W3C
else if (document.implementation && document.implementation.createDocument) {
return document.implementation.createDocument('', '', null);
} throw new Error("Xml is not supported by your brower!");
} function loadXmlFile(xmlFile) {
var xmlDocument = createXmlDocument();
xmlDocument.async = false;
xmlDocument.load(xmlFile);
return xmlDocument;
} function loadXmlText(xmlText) {
// IE Must be tested first if (window.ActiveXObject) {
var xmlDocument = new ActiveXObject("Microsoft.XMLDOM");
xmlDocument.async = false;
xmlDocument.loadXML(xmlText); return xmlDocument;
}
// W3C
else if(window.DOMParser) {
return (new DOMParser()).parseFromString(xmlText, "text/xml");
} throw new Error("Xml is not supported by your brower!");
} var Xml = window.Xml = window.jasen.core.Xml;
Xml.createDocument = createXmlDocument;
Xml.loadFile = loadXmlFile;
Xml.loadText = loadXmlText; })(window);

二、范例

 <script language="javascript" type="text/javascript">
function testXml() {
var xmlDoc = Xml.loadFile("/Xml/House.xml");
var xmlDocElement = xmlDoc.documentElement;
var nodes = xmlDocElement.getElementsByTagName("city");
var currNode = null; for (var i = 0; i < nodes.length; i++) {
currNode = nodes[i]
} var xmlText = "<address><city name='北京'><price>150万</price><type>一室三居</type></city></address>";
xmlDocElement = Xml.loadText(xmlText); var cityName = xmlDocElement.selectSingleNode("address/city/@name").nodeValue;
var price = xmlDocElement.selectSingleNode("address/city/price/text()").nodeValue;
}
</script>

javascript Xml兼容性随笔的更多相关文章

  1. javascript opacity兼容性随笔

    一.CSS兼容代码 .transparent { filter:alpha(opacity=50); /* IE */ -moz-opacity:0.5; /* FireFox old version ...

  2. javascript event兼容性随笔

    一.前言 function ConvertEvent(e, element) { var event = e || window.event; var resultEvent = { event: e ...

  3. javascript position兼容性随笔

    一.Javascript源码 if (!window.jasen.core.Position) { window.jasen.core.Position = {}; } function Size(w ...

  4. 《高性能javascript》 领悟随笔之-------DOM编程篇(二)

    <高性能javascript> 领悟随笔之-------DOM编程篇二 序:在javaSctipt中,ECMASCRIPT规定了它的语法,BOM实现了页面与浏览器的交互,而DOM则承载着整 ...

  5. 《高性能javascript》 领悟随笔之-------DOM编程篇

    <高性能javascript> 领悟随笔之-------DOM编程篇一 序:在javaSctipt中,ECMASCRIPT规定了它的语法,BOM实现了页面与浏览器的交互,而DOM则承载着整 ...

  6. 转 创建 JavaScript XML 文档注释

    http://www.cnblogs.com/chenxizhang/archive/2009/07/12/1522058.html 如何:创建 JavaScript XML 文档注释 Visual ...

  7. JavaScript & XML

    原文:JavaScript & XML 检测浏览器能力特性 //检测浏览器是否支持DOM2级XML var hasXmlDom = document.implementation.hasFea ...

  8. JAVASCRIPT 浏览器兼容性问题及解决方案列表

    JAVASCRIPT 浏览器兼容性问题及解决方案列表(1)获取HTML元素只兼容IE:document.all.hello hello 兼容所有: document.getElementById(“h ...

  9. JavaScript 事件兼容性写法

    1.以下是JavaScript事件兼容性写法,使用者可以随意使用,兼容所有浏览器.包括IE6(亲测) <!DOCTYPE html> <html> <head> & ...

随机推荐

  1. 1、Linux驱动重要的数据结构

    1.struct file 这个结构体定义在  linuxsource/include/linux/fs.h 中第960行左右 具体成员如下: struct file { /* * fu_list b ...

  2. java日常时间处理

    private static String[] parsePatterns = { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", & ...

  3. linux 怎么完全卸载mysql数据库

    在linux下开发,mysql数据库是经常用到的,对于初学者来说,在linux怎么安装卸载mysql数据库,也许可能比较痛苦,这里简单介绍下,怎么卸载msql数据库. a)查看系统中是否以rpm包安装 ...

  4. dp、px、dpi、ppi

    概念: dpi(Dots Per Inch):每英寸上的点数,最初用于衡量打印物上每英寸的点数密度,打印机在一英寸内打多少个点.DPI值越小越不精细. ppi(Pixels Per Inch):每英寸 ...

  5. Django + Apache + 树莓派 搭建内网微信公众号服务器

    其实早在微信开放公众号开发平台时就想弄一个自己的公众号服务器,奈何对web服务器搭建和开发一窍不通,只是注册了一下开发者帐号,并没有采取行动,万恶的拖延症. 前一年,开始接触python,打开了神奇世 ...

  6. vertx简单客户端创建

    import java.util.HashMap;import java.util.Map; import com.yunva.vertx.test.vertproject.util.JsonUtil ...

  7. Dreamweaver扩展注意事项

    对Dreamweaver扩展做了一些整理. 扩展开发扩展(Extension),是应用程序给用户预留的二次开发接口.Dreamweaver提供了对菜单,插入栏(Insertbar),浮动框等GUI部件 ...

  8. Selenium2+python 常用函数汇总

    1. driver = webdriver.Chrome()  --新建实例 2.driver.find_element_by_id("username") ---通过标签属性id ...

  9. Android中如何收听特定应用安装成功的广播

    一.manifest的配置 <receiver android:name=".AppReceiver"> <intent-filter> <actio ...

  10. 在安卓下打包cocos2d-js 3.6项目with ProtoBuf.js

    项目用到了cocos2d-js 3.6和ProtoBuf.js,但是打包成apk时运行时总是报错(evaluatedOK == JS_FALSE),没有具体的文件和行号报错信息. 只能一个一个文件排查 ...