我正在使用脚本模板在javascript中创建可恢复的html标记。模板使用小胡子用正确的值替换标签。然后由JQUery Mobile再次呈现和呈现html。一个片段看起来像这样:
<!doctype html>
<html>
<head>
<meta charset="UTF-8" />
<title>jQuery Mobile</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta charset="utf-8" http-equiv="X-UA-Compatible" content="IE=9" />
</head>
<body>
<!-- Page Templates -->
<script id="page_header_tpl" type="text/template">
<div data-role="header" class="toolbar {{#class}}{{{class}}}{{/class}}" {{#id}}id="{{{id}}}" {{/id}}>
<h1>{{{title}}}</h1>
<div data-role="ui-bar" class="ui-bar" id="ui-top">
{{#buttons}}
{{{.}}}
{{/buttons}}
</div><!-- /navbar -->
{{#navbar}}
{{{navbar}}}
{{/navbar}}
</div>
</script>
<script type="text/javascript">
//Function for creating the header
function createPageHeader(data) {
html = $('#page_header_tpl').html();
return Mustache.render(html, data);
}
//Calling the function
var header = createPageHeader({ class : 'aheader', id : 'my id', title : 'Page 1'});
<script>
</body>
</html>
我的问题是我可以使用哪种技术来优化模板元素的调用和放置到html文件中?快速检索元素? Mustache解析速度更快?记忆技巧?等
答案 0 :(得分:0)
您最好的选择可能是在客户端使用Handlebars。它与Mustache完全兼容,并为compile your templates ahead of time提供了更好的性能。
它还添加了许多额外的帮助程序,但如果您希望保持模板与Mustache兼容(例如,在服务器端使用),则不必使用这些帮助程序。
不仅如此,provides a stripped version (Handlebars runtime) of the library也可用于编译模板。
可以在此处找到包含更多有用链接的比较文章 - http://nimbupani.com/mustache.html