<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="Content-Language" content="zh-CN" />
<meta name="Keywords" content="" />
<meta name="Description" content="" />
<script src="jQuery.js" type="text/javascript"></script>
<script>
//解析xml字符串变量为IXMLDOMDocument2
function parseXML(data) {
var xml, tmp;
if (window.DOMParser) { // Standard
tmp = new DOMParser();
xml = tmp.parseFromString(data, "text/xml");
} else { // IE
xml = new ActiveXObject("Microsoft.XMLDOM");
xml.async = "false";
xml.loadXML(data);
}
tmp = xml.documentElement;
if (!tmp || !tmp.nodeName || tmp.nodeName === "parsererror") {
return null;
}
return xml;
}
//将 IXMLDOMDocument2 转换为JSON,参数为IXMLDOMDocument2对象
function toJson(obj) {
if (this == null) return null;
var retObj = new Object;
buildObjectNode(retObj,
/*jQuery*/
obj);
return retObj;
function buildObjectNode(cycleOBJ,
/*Element*/
elNode) {
/*NamedNodeMap*/
var nodeAttr = elNode.attributes;
if (nodeAttr != null) {
if (nodeAttr.length && cycleOBJ == null) cycleOBJ = new Object;
for (var i = 0; i < nodeAttr.length; i++) {
cycleOBJ[nodeAttr[i].name] = nodeAttr[i].value;
}
}
var nodeText = "text";
if (elNode.text == null) nodeText = "textContent";
/*NodeList*/
var nodeChilds = elNode.childNodes;
if (nodeChilds != null) {
if (nodeChilds.length && cycleOBJ == null) cycleOBJ = new Object;
for (var i = 0; i < nodeChilds.length; i++) {
if (nodeChilds[i].tagName != null) {
if (nodeChilds[i].childNodes[0] != null && nodeChilds[i].childNodes.length <= 1 && (nodeChilds[i].childNodes[0].nodeType == 3 || nodeChilds[i].childNodes[0].nodeType == 4)) {
if (cycleOBJ[nodeChilds[i].tagName] == null) {
cycleOBJ[nodeChilds[i].tagName] = nodeChilds[i][nodeText];
} else {
if (typeof(cycleOBJ[nodeChilds[i].tagName]) == "object" && cycleOBJ[nodeChilds[i].tagName].length) {
cycleOBJ[nodeChilds[i].tagName][cycleOBJ[nodeChilds[i].tagName].length] = nodeChilds[i][nodeText];
} else {
cycleOBJ[nodeChilds[i].tagName] = [cycleOBJ[nodeChilds[i].tagName]];
cycleOBJ[nodeChilds[i].tagName][1] = nodeChilds[i][nodeText];
}
}
} else {
if (nodeChilds[i].childNodes.length) {
if (cycleOBJ[nodeChilds[i].tagName] == null) {
cycleOBJ[nodeChilds[i].tagName] = new Object;
buildObjectNode(cycleOBJ[nodeChilds[i].tagName], nodeChilds[i]);
} else {
if (cycleOBJ[nodeChilds[i].tagName].length) {
cycleOBJ[nodeChilds[i].tagName][cycleOBJ[nodeChilds[i].tagName].length] = new Object;
buildObjectNode(cycleOBJ[nodeChilds[i].tagName][cycleOBJ[nodeChilds[i].tagName].length - 1], nodeChilds[i]);
} else {
cycleOBJ[nodeChilds[i].tagName] = [cycleOBJ[nodeChilds[i].tagName]];
cycleOBJ[nodeChilds[i].tagName][1] = new Object;
buildObjectNode(cycleOBJ[nodeChilds[i].tagName][1], nodeChilds[i]);
}
}
} else {
cycleOBJ[nodeChilds[i].tagName] = nodeChilds[i][nodeText];
}
}
}
}
}
}
}
</script>
</head>
<body style="background:#000;">
<textarea style="width:950px;height: 500px;">
<site>
<id>abc7b4ab46494f0bba6e8e4709c7eaa0</id>
<name>SDK_101简易模板</name>
<author name="[提示:请添加模板作者名称]" url="http://www.yourwebsite.com" wangwang="[提示:请添加模板作者的旺旺]"></author>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
<language>PHP</language>
<version>1.0.0</version>
<apply-sites>2</apply-sites>
<apply-user>c测试账号154</apply-user>
<template-type>1</template-type>
<sale-type>1</sale-type>
<change-notes>[提示:请添加模板修改日志]</change-notes>
<description>SDK_101简易模板</description>
<global>
<header>header.json</header>
<footer>footer.json</footer>
</global>
<themes default="第一风格">
<theme name="第二风格">
<css>assets/stylesheets/style2/extra.css</css>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
</theme>
<theme name="第一风格">
<css>assets/stylesheets/style1/extra.css</css>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
</theme>
<theme name="第三风格">
<css>assets/stylesheets/style3/extra.css</css>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
</theme>
<theme name="第四风格">
<css>assets/stylesheets/style4/extra.css</css>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
</theme>
</themes>
<pages>
<page type="index">
<name>首页</name>
<file>index.json</file>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
<description xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">[提示:请添加首页的描述]</description>
</page>
<page type="detail">
<name>默认宝贝详情页</name>
<file>detail.json</file>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
<description xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">[提示:请添加默认宝贝详情页的描述]</description>
</page>
<page type="list">
<name>默认宝贝分类页</name>
<file>list.json</file>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
<description xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">[提示:请添加默认宝贝分类页的描述]</description>
</page>
<page type="other">
<name>自定义页面</name>
<file>other.json</file>
<thumbnail>assets/images/default-thumbnail.png</thumbnail>
<description xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">[提示:请添加自定义页面的描述]</description>
</page>
</pages>
</site>
</textarea>
<script>
var xml=$('textarea').val();
var j=toJson(parseXML(xml));
alert( JSON.stringify(j) );
</script>
</body>
</html>