HTML <template> 标签
实例
使用 <template> 保留页面加载时隐藏的内容。使用 JavaScript 来显示:
<button onclick="showContent()">显示隐藏内容</button>
<template>
<h2>花</h2>
<img src="img_white_flower.jpg" width="214" height="204">
</template>
<script>
function showContent() {
var temp = document.getElementsByTagName("template")[0];
var clon = temp.content.cloneNode(true);
document.body.appendChild(clon);
}
</script>
亲自试一试 »
<template>
<h2>花</h2>
<img src="img_white_flower.jpg" width="214" height="204">
</template>
<script>
function showContent() {
var temp = document.getElementsByTagName("template")[0];
var clon = temp.content.cloneNode(true);
document.body.appendChild(clon);
}
</script>
下面有更多实例。
定义和用法
如果您有一些需要重复使用的 HTML 代码,则可以使用
浏览器支持
元素 | |||||
---|---|---|---|---|---|
<template> | 26.0 | 13.0 | 22.0 | 8.0 | 15.0 |
全局属性
<template>
标签支持 HTML 中的全局属性。
更多实例
实例
对数组中的每个项,都使用一个新的 div 元素来填充网页。每个 div 元素的 HTML 代码都在 template 元素内:
<template>
<div class="myClass">I like: </div>
</template>
<script>
var myArr = ["Audi", "BMW", "Ford", "Honda", "Jaguar", "Nissan"];
function showContent() {
var temp, item, a, i;
temp = document.getElementsByTagName("template")[0];
item = temp.content.querySelector("div");
for (i = 0; i < myArr.length; i++) {
a = document.importNode(item, true);
a.textContent += myArr[i];
document.body.appendChild(a);
}
}
</script>
亲自试一试 »
<div class="myClass">I like: </div>
</template>
<script>
var myArr = ["Audi", "BMW", "Ford", "Honda", "Jaguar", "Nissan"];
function showContent() {
var temp, item, a, i;
temp = document.getElementsByTagName("template")[0];
item = temp.content.querySelector("div");
for (i = 0; i < myArr.length; i++) {
a = document.importNode(item, true);
a.textContent += myArr[i];
document.body.appendChild(a);
}
}
</script>
实例
检查 <template> 的浏览器支持:
<script>
if (document.createElement("template").content) {
document.write("您的浏览器支持模板!");
} else {
document.write("您的浏览器不支持模板!");
}
</script>
亲自试一试 »
if (document.createElement("template").content) {
document.write("您的浏览器支持模板!");
} else {
document.write("您的浏览器不支持模板!");
}
</script>