本文代码在线演示
http://jsct.googlecode.com/svn/trunk/jCT/example/index.html
中的简化模板:walkjCT
=================
最近一段时间和jCT的使用者有一些交流.
昨天突然想到一个问题:
我最初开发jCT的时候,想的就是如何和ajax配合使用.虽然jCT可以不和ajax配合,嵌入单页面也可以工作,可是我以前没有在嵌入单页面方向做一些针对性的工作.今天补上这篇文章.
jCT 嵌入模板简化方案
:适用于单页面
,也就是数据,模板都在一个页面上
常见的结构伪代码:
<html>
<head>
<script src="jct.js"></script>
<script>
var data1={....};
var data2={....};
var data3={....};
</script>
</head>
<body>
<div>普通页面代码</div>
<div>
<div>普通页面代码</div>
<!---/*下面是jCT模板*/-->
<!---for (var i in data1){-->
<a href="+-data1[i].href-+">+-data1[i].text-+</a>
<!---}-->
<div>普通页面代码</div>
</div>
<div>普通页面代码</div>
<!---/*下面是jCT模板*/-->
<!---for (var i in data2){-->
<a href="+-data2[i].href-+">+-data2[i].text-+</a>
<!---}-->
<div>普通页面代码</div>
</body>
</html>
有些朋友也许看出来了,在这种最简单的模式下,
数据是全局的.
模板里面可能出现的javascript语句就是for和if了,其他的出现的几率很小(出现了也无所谓,jCT一样可以正确运行).
其实在这种情况下用
var ins=jCT(document.body.innerHTML);
document.body.innerHTML=ins.Build().GetView();
也可以简单的运行,不过这样写看上去有些不太友好,页面被全部重构了.
对于上面的html代码来说没有必要重构所有的页面,因为很明显需要模板的地方只有两处,而这两处都是位于body的某个子节点.仅仅把这两部分让jCT解析得到视图,重构就行了.
当然可以
用
定义ID之类方法了,不过如果这些琐碎的模板多的话就不方便了.
鉴于模板的规律性,其实可以写一个工具自动完成这个工作.
代码很简单
function walkjCT(node){
if (undefined===node) node=document.body;
var ins,n=node.firstChild;
while(n){
if(n.nodeType==8 && n.nodeValue.slice(0,1)=='-'){
node.innerHTML=(new jCT(node.innerHTML)).Build().GetView();
return;
}
if (n.nodeType==1)
walkjCT(n);
n=n.nextSibling;
}
}
而这个函数只要在页面调入完成调用就可以了.比如
<body onload="walkjCT();">
//jQuery代码
$(function(){
walkjCT();
})
分享到:
相关推荐
JCT 2557-2020 规范
JCT 2558-2020 规范
总的来说,JCT是一个全面的Java加密解密解决方案,它集成了多种加密算法,并提供方便的API,简化了开发过程。通过深入研究其提供的文档和源代码,开发者可以更好地利用这个工具包来提高应用程序的安全性。
JCT 621-2021 硅酸盐建筑制品用生石灰
标准 JCT174-2005无碱玻璃纤维带
JCT 2177-2021 硅藻泥装饰壁材
JCT 1017-2020 建筑防水材料用聚合物乳液
JCT 60006-2020 瓷砖薄贴法施工技术规程
JCT 2560-2020 结构密封胶
JCT 620-2021 石灰取样方法
JCT 618-2019化学解析方法
JCT 2041-2020 聚氨酯灌浆材料
Report of Subjective Test Results of Responses to the Joint Call for Proposals (CfP) on Video Coding Technology for High Efficiency Video Coding (HEVC)所应用的测试序列
JCT 2561-2020 金属复合板
JCT 1057-2021 玻璃纤维增强水泥(GRC)外墙板
JCT 2604-2021 仿石型混凝土面板和面砖
JCT 949-2021 混凝土制品用脱模剂
JCT 2602-2021 预应力混凝土U形板桩
JCT 为java开发者提供实用、方便、简洁的加密和解密相关的工具代码。1.0版提供Blowfish,SHA与MD5数字摘要,PBE基于口令的加密,RSA算法工具类,使这些算法更容易在编成中使用.文件包中含源码、文档、class包WDSsoft:...
JCT 872-2019 建筑装饰用微晶玻璃