微信公众平台script脚本里夹杂着html和js

苏生不惑 发布于 2013/05/29 14:00
阅读 1K+
收藏 0

看到微信公众平台的一段代码:

<script id="tCommonCatalogList" type="text/html">
<#WXM#/*TEMPLATES*/#WXM#>

		<div class="sideBar">

			<div class="catalogList">

				<ul>

				<#WXM#

					var i=0, item;

					while(item = catalogList[i++]) {

				#WXM#>

						<li 

							<#WXM# if (item.id) {#WXM#>

								id="<#WXM#=item.id#WXM#>"

							<#WXM# } #WXM#>

							class="<#WXM#=item.selected||''#WXM#> <#WXM#=item.subCatalogList||''#WXM#> <#WXM#=item.className#WXM#>"

						>

							<#WXM# if(item.link){ #WXM#>

								<a href="<#WXM#=item.link#WXM#>"><#WXM#=item.title#WXM#><#WXM#=item.num!==undefined?"("+item.num+")":""#WXM#></a>

							<#WXM# } else { #WXM#>

								<span><#WXM#=item.title#WXM#><#WXM#=item.num!==undefined?"("+item.num+")":""#WXM#></span>

							<#WXM# } #WXM#>

						</li>

				<#WXM#

				  }

				#WXM#>

				</ul>

			</div>

		</div>

	</script>
脚本里夹杂着html和js,不知道怎么实现的?

以下是问题补充:

@苏生不惑:刚发现微博也有个类似的 <script id="comments-view" type="text/x-jquery-tmpl"> <div class="sjtk"></div> <div class="tk_title"> <span class="close_span"><img src="/medias/img/close1.jpg" /></span> <span class="fr publisher-info">还可输入<span class="pipsLim">140</span>字</span> {{if count === 0}} <span class="${className}${id}-explain">该微博尚未被${type}</span> {{else}} <span class="${className}${id}-explain">${type}原文,<a href="${timeline_url}" target="_blank" >共约<span class="${className}${id}">${count}</span>条${type}>></a></span> {{/if}} </div> </label><textarea name="" class="tk_txt" id="${id}-comment-textarea"></textarea> <div class="tk_bq"> <div class="tk_bq_left"> <a href="#" class="icon-face">表情</a> <a href="#" class="icon-account-radio">选择帐号</a> <input type="checkbox" class="cbox" /><span class="zf">${extra_action}</span> </div> <input type="button" text_id="${id}" value="${type}" class="tk_btn post_comment_btn" /> </div> <div class="fetching hidden"> <img src="/medias/img/loading.gif" /> </div> <div class="tkpl comment-list"></div> </script> 能直接判断和使用服务器端的变量 (2013/05/29 15:31)
加载中
0
楼教主
楼教主

腾讯自己的 js 模版引擎,http://aui.github.io/artTemplate/

苏生不惑
苏生不惑
谢谢,原来js也有模板,学习了
0
pfdoschina
pfdoschina
看着像服务端脚本,具体用的什么实现,不清楚
0
liuxiaole
liuxiaole

2L正解。这个script纯粹为了放文本而已,type="text/html",因此浏览器不会执行的,用js获取其innerHTML,然后就是字符串处理了,哈哈,说的高级点就叫模板引擎进行渲染,然后把渲染完毕的内容再append到某个节点内。

这种做法的性质是,web页面处理的模板渲染过程从后端推移到前端来完成。

苏生不惑
苏生不惑
貌似和php的smarty类似
返回顶部
顶部