z4x,本来打算单独写的,不过jquery的用户实在是很多,就搭搭这个顺风车吧,改造成jquery解析xml插件,用过的同事都说很好用哦。顺便加上一个反射方法。
该插件有两个方法:
1). z4x 解析xml并转化为json对象。
2). 反射方法,可以反射json对象。
0. jquery.z4x.js 源码:
$.extend({
z4x: function(s) {
var dom;
if (typeof(s) == "object") {
dom = s;
} else if (typeof(s) == "string") {
if (window.ActiveXObject) {
dom = new ActiveXObject("Microsoft.XmlDom");
dom.async = "false";
dom.loadXML(s);
} else {
dom = new DOMParser().parseFromString(s, "text/xml");
}
}
var _dig = function(ele) {
var oo = {};
var alen = (ele.attributes) ? ele.attributes.length: 0;
for (var i = 0; i < alen; i++) {
oo["$" + ele.attributes[i].name] = ele.attributes[i].value;
}
var elen = ele.childNodes.length;
if (elen == 0) return oo;
var tem;
for (var i = 0; i < elen; i++) {
tem = oo[ele.childNodes[i].nodeName];
if (typeof(tem) == "undefined") {
if (ele.childNodes[i].childNodes.length == 0) {
if (ele.childNodes[i].nodeName == "#text" || ele.childNodes[i].nodeName == "#cdata-section") {
oo["$$"] = ele.childNodes[i].nodeValue;
} else {
oo[ele.childNodes[i].nodeName] = [_dig(ele.childNodes[i])];
}
} else {
oo[ele.childNodes[i].nodeName] = [_dig(ele.childNodes[i])];
}
} else {
tem[tem.length] = _dig(ele.childNodes[i]);
oo[ele.childNodes[i].nodeName] = tem;
}
}
return oo;
};
var oo = {};
oo[dom.documentElement.nodeName] = _dig(dom.documentElement);
return oo;
},
ref : function(o,sp)
{
sp = sp?sp:"\n";
var tem = [];
for(var i in o) tem[tem.length]=i+":"+o[i];
return tem.join(sp);
}
});
使用举例:
1. a.xml
<?xml version="1.0" encoding="utf-8"?>
<root>
<a id="t1" desc="just test">abc</a>
<b id="t2"><![CDATA[
<c>test</c>
]]></b>
</root>
2. 调用
$(function(){
$.get("a.xml",function(data){
var json = $.z4x(data);//只需一步,即可变成json.
alert($.ref(json));//反射json
//alert($.ref(json.root));//继续反射,看看里面有什么
});
})
是不是很简单啊,快试试吧。
分享到:
相关推荐
BCM94360Z4_Z3 Drivers_Win10_x64文件是为了兼容64位Windows 10系统而设计的,确保在最新的操作系统环境下运行无误。驱动程序通常包含了硬件识别、初始化、配置以及控制所需的所有代码,是操作系统与硬件之间的重要...
Z4ROOT 一键ROOT工具
Z4Root v1.4
jQuery easyUI 1.4.2,非常好用的页面布局,提供了很多强大功能,适合小型项目。
Galaxy 3 I5800、Droid X、Samsung Acclaim、Cricket Huawei Ascend、Motorola Cliq、Huawei 8120、Hero Optimus T、Droid 1 (z4root 1.2.1)、Garmin Asus A50 更新日志 - 修复一些BUG - 添加了广告(已去除)
宝马Z4是一款由德国宝马汽车公司制造的双座跑车。在本用户手册中,您将找到关于如何驾驶和操作该车的详细指南,包括车辆的各个功能和系统的介绍。用户手册内容全面,涵盖了从基本信息到技术参数,再到故障排除的各个...
Z4root是一款知名的安卓设备root工具,主要用于帮助用户获取手机的超级用户权限。在安卓系统中,root权限意味着用户可以访问并修改系统级别的文件,执行更深层次的操作,比如卸载预装应用、优化系统性能、自定义ROM...
《斑马Z4M打印机使用指南详析》 一、斑马Z4M打印机概览 斑马Z4M打印机,作为斑马科技(Zebra Technologies Corporation)旗下的一款高性能条形码打印机,专为满足商业及工业环境中高负荷打印需求而设计。其卓越的...
根据提供的文件内容,我们可以分析出以下关于Z4M-W40RA_e.pdf文件的知识点: 1. 产品系列介绍:文档中提到的产品系列名为Z4M-W40RA_e,属于Z4M系列激光位移传感器的范畴。这种传感器采用了易于操作的可见光源,具有...
部分安卓手机越狱软件,直接安装使用,针对部分第三方rom支持较好,官方rom成功率不高
宝马Z4的UG图纸,是整车的图纸,做得还比较细致!
z4 root权限
以上是对宝马Z4建模过程中的关键步骤和技术的详细解析,这些技术同样适用于其他汽车建模项目,有助于提升建模效率和质量。在实际操作中,灵活运用各种工具和命令,结合个人经验和技巧,可以创造出更精细的三维模型。
2.下载并安装z4root、root explorer。3.先打开USb调试模式运行z4root再运行root explorer。运行z4root后会出现一个骷髅头图标(busybox)此图标以后用来管理对上述程序的root权限。4.点击打开骷髅头图标,程序打开后会...
z4root的apk文件,我用这个成功root了我的手机;与大家分享一下下!
一键ROOT工具z4root_v1.3.0汉化版
Z4root,一键ROOT。针对安卓系统的一键ROOT软件,可以临时ROOT或者永久ROOT。安装后需要下载软件赚积分,才能运行。
z4root1.3.0_liqucn.apk
android平台上的一键root工具,z4root全部源代码。