注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Computer Science

I Pressed My Words Here. Will You Read ?

 
 
 

日志

 
 

用JavaScript编写、解析及生成 对象框架组件文档(三)文档生成篇  

2012-07-10 21:15:14|  分类: My Projects |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
HTML文件引用的JS文件中,调用输出程序的页面JavaScript代码:
 1 $(function(){
 2     
// 调用文档生成程序,将生成的JSON对象作为第二个入参传入。第一个入参指明翻译时所用的配置字典。     
 3     
var text = printDocument({language:'zh_cn'},getDocument());
 4     
showMe(text,{newWindow:true});// 直接在新窗口以网页形式显示text内容
 5 });

____________________________
showMe(text,{newWindow:true}) 生成的页面保存为complete HTML文件。
然后在head中加入toggleVisiable(event,this) 函数的逻辑。主要控制收缩文档节点。
 1   8     function toggleVisiable(ev,domObj){
 2   9         ev.cancelBubble= true;
 3  10         ev.stopPropagation();
 4  11         var domObjChildNodesLength = domObj.childNodes.length;
 5  12        
 6  13         if(domObjChildNodesLength > 0){
 7  14             var domObjChildNodes = domObj.childNodes;
 8  15             while(domObjChildNodesLength-->0){
 9  16                 var childNode = domObjChildNodes[domObjChildNodesLength];
10  17                 if(childNode.nodeName == "DIV"){
11  18                     childNode.style = childNode.style || {};
12  19                     childNode.style.display = (childNode.style.display == "none"? "inline" :"none");
13  20                     if(childNode.style.display == "none"){
14  21                         domObj.style.background = "#111111"
15  22                         //domObj.style.display = "block"
16  23                     }else{
17  24                         domObj.style.background = ""
18  25                         //domObj.style.display = "inline"
19  26                     }
20  27                 }else{
21  28                 }
22  29                 delete childNode;
23  30             }
24  31             delete domObjChildNodes;
25  32         }
26  33         delete domObj;
27  34     }
28 
 
最后,一份可折叠的HTML格式的文档就生成了。


在实际使用中,5000行的JSON对象生成代码(组件描述数据)+ 900行的解析代码 + 30行的输出控制代码 === 90,000 行的 HTML可折叠文档。—— 這便是我分享它的理由。
  评论这张
 
阅读(553)| 评论(2)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017