1、前言javascript
当咱们使用String-base的模板引擎(如Handlebars.js等)时,要么就经过外部文件存放模板文本,须要时再经过XHR或script标签加载进来;要么经过等标签直接写在当前页面上。如今HTML5为咱们提供了一个全新的template标签,以更统1、有效的方式存放String-base模板引擎的模板文本了!html
目录一坨:html5
2、那些年咱们存放模板文本的方式
首先要明确模板文档具备如下2个要求:
1. <> "' 不被转成字符实体;
2. 含src特性的img标签不触发资源请求。
下面是经常使用的存放方式:
1. script标签
//模板文本
//获取模板
//不能经过innerText获取,由于innerText没法获取等标签字符
var tpl = document.getElementById('tpl').innerHTML
tpl= tpl.replace(/^[\s\u3000]*|[\s\u3000]*$/, '')
Handlebars.compile(tpl)({title:'test'})
注意:
1. 若模板中包含标签会形成标签结束符混乱的问题,所以经过该方式存放模板时,不能包含结束标签;
2. script标签位置较随意,能够做为head或bo