61,115
社区成员
发帖
与我相关
我的任务
分享
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>TestJQuery</title>
<script src="D:/jQuery/jquery-1.7.2.js" type="text/javascript"></script>
<script type="text/javascript">
var j='{"type":"hbox","width":"40%","height":"370","grep":"10","align":" ","valign":" ","children":[{"type":"atom","width":"95%","height":"94%","grep":"10","align":" ","valign":" ","children":[]}]}';
$(document).ready(function(){
divlayout(j);
});
function divlayout(j){
var obj=eval('('+j+')');
idnum(0,obj,0);
}
var layerid="";
//div的层id
var ladiid;
//同一层下的div的id
var obj2;
function idnum(ladiid,obj,layerid,obj2) {
//第一层直接追加div
if(layerid==""){
$("#div0").append('<div id="div'+layerid+ladiid+'" style=" border:1px #000 solid ;float:left;align:'+obj.align+';valign:'+obj.valign+';width:'+obj.width+';height:'+obj.height+';"></div>');
//alert("#div"+layerid+ladiid);
layerid=String(layerid)+String(ladiid);
}else{
if(obj.type=="hbox"){
if(obj.align=="true"&&ladiid!=0){
$("#div"+layerid).append('<div id="div'+layerid+ladiid+'" style=" border:1px #000 solid;float:left;align:'+obj.align+';valign:'+obj.valign+';width:'+obj.width+';height:'+obj.height+'; margin-left:'+obj.grep+'; margin-top:'+obj2.grep+';"></div>');
alert(obj2.grep);
//alert("#div"+layerid+ladiid);
layerid=String(layerid)+String(ladiid);
}else{
$("#div"+layerid).append('<div id="div'+layerid+ladiid+'" style=" border:1px #000 solid;float:left;align:'+obj.align+';valign:'+obj.valign+';width:'+obj.width+';height:'+obj.height+'; margin-left:'+obj.grep+'; margin-top:'+obj.grep+';"></div>');
//alert("#div"+layerid+ladiid);
layerid=String(layerid)+String(ladiid);
}
}else if(obj.type=="vbox"){
$("#div"+layerid).append('<div id="div'+layerid+ladiid+'" style=" border:1px #000 solid;align:'+obj.align+';valign:'+obj.valign+';float;left;width:'+obj.width+';height:'+obj.height+'; margin-left:'+obj.grep+';margin-top:'+obj.grep+'; "></div>');
//alert("#div"+layerid+ladiid);
layerid=String(layerid)+String(ladiid);
}else if(obj.type=="atom"){
$("$div"+layerid).append('<div id="div'+layerid+layiid+'" style="border:1px #000 solid; align:'+obj.align+';float;left;valign:'+obj.valign+';width:'+obj.width+';height:'+obj.height+';margin-left:'+obj.grep+';margin-top:'+obj.grep+';"></div>');
layerid=String(layerid)+String(ladiid);
}else{
}
}
$.each(obj.children, function(i, item) {
idnum(i,item,layerid,obj);
});
}
</script>
</head>
<body>
<div id="div0"></div>
</body>
</html>
var j='{"type":"hbox","width":"40%","height":"370","grep":"10","align":" ","valign":" ","children":[{"type":"atom","width":"95%","height":"94%","grep":"10","align":" ","valign":" ","children":[]}]}';
function checkJson(json){
var result = null;
try{
result = JSON.parse(json);
}
catch(e){
result = eval('('+json+')');
}
return result;
}
function checkObj(obj){
if(obj){
for(var i in obj){
if(typeof obj[i] == "object"){
checkObj(obj[i]);
}else{
alert(obj[i]);
}
}
}
}
window.load=checkObj(checkJson(j));