最好将所有模板标签注入头部?
我认为这样代码会更简洁,它将元素划分为可以渲染的项目和其他不能渲染的项目。你怎么想或你自己用什么?
它实际上是基于个人喜好和模板的上下文。template
标签当然可以放在head
元素中,因为W3 标准允许在其中放置元数据内容,并且template
元素确实可以是元数据。但是,W3 代码示例(如下所示)显示它放置在预期使用的位置附近。
<!DOCTYPE html>
<title>Cat data</title>
<script>
// Data is hard-coded here, but could come from the server
var data = [
{ name: 'Pillar', color: 'Ticked Tabby', sex: 'Female (neutered)', legs: 3 },
{ name: 'Hedral', color: 'Tuxedo', sex: 'Male (neutered)', legs: 4 },
];
</script>
<table>
<thead>
<tr>
<th>Name <th>Color <th>Sex <th>Legs
<tbody>
<template id="row">
<tr><td><td><td><td>
</template>
</table>
<script>
var template = document.querySelector('#row');
for (var i = 0; i < data.length; i += 1) {
var cat = data[i];
var clone = template.content.cloneNode(true);
var cells = clone.querySelectorAll('td');
cells[0].textContent = cat.name;
cells[1].textContent = cat.color;
cells[2].textContent = cat.sex;
cells[3].textContent = cat.legs;
template.parentNode.appendChild(clone);
}
</script>