HTML <template> 标签

实例

使用 <template> 保留页面加载时隐藏的内容。使用 JavaScript 来显示:

<button onclick="showContent()">显示被隐藏的内容</button>

<template>
  <h2>Flower</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>

亲自试一试

页面下方有更多 TIY 实例。

定义和用法

<template> 标记用作容纳页面加载时对用户隐藏的 HTML 内容的容器。

<template> 中的内容可以稍后使用 JavaScript 呈现。

如果您有一些需要重复使用的 HTML 代码,则可以使用 <template> 标记。如果在没有 <template> 标记的情况下执行此操作,必须使用 JavaScript 创建 HTML 代码,以防止浏览器呈现这些代码。

浏览器支持

元素 Chrome IE Firefox Safari Opera
<template> 26.0 13.0 22.0 8.0 15.0

全局属性

<template> 标签同时支持 HTML 中的全局属性

更多实例

实例

对数组中的每个项,都使用一个新的 div 元素来填充网页。每个 div 元素的 HTML 代码都在 template 元素内:

<template>
  <div class="myClass">我喜欢:</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("Your browser supports template!");
} else {
  document.write("您的浏览器不支持 template!");
}
</script>

亲自试一试