html5使用template标签定义可复用模板 html5使用模板片段的方法

20次阅读

html5的template标签用于定义不渲染的可复用HTML片段,通过javaScript克隆并插入dom,适用于列表、卡片等动态内容,提升代码可读性和安全性。

html5使用template标签定义可复用模板 html5使用模板片段的方法

html5template 标签提供了一种在页面中定义可复用 HTML 模板片段的方法。这些模板不会在页面加载时被渲染,只有在 javascript 动态操作时才会被激活和插入到文档中。这种方法非常适合构建动态内容,比如列表项、卡片组件或模态框。

template 标签的特点

template 是一个内置的“惰性”容器,用于存放客户端的 HTML 模板。它的内容默认不渲染、不执行脚本、不加载图片,直到被 JavaScript 显式使用。

  • 标签内部的 HTML 不会显示在页面上
  • 其中的脚本不会运行,样式不生效
  • 可以包含任何合法的 HTML 结构
  • 可通过 JavaScript 克隆并插入到 DOM 中

定义可复用模板

使用 <template> 标签包裹你想要复用的 HTML 结构:

<template id="user-card-template">   <div class="user-card">     <img src="" alt="Avatar" class="avatar">     <h3 class="username"></h3>     <p class="email"></p>   </div> </template>

这个模板定义了一个用户卡片结构,但页面加载时不会显示。

立即学习前端免费学习笔记(深入)”;

通过 JavaScript 使用模板

使用 JavaScript 获取模板内容,并将其克隆后插入到页面中:

html5使用template标签定义可复用模板 html5使用模板片段的方法

AiPPT模板广场

AiPPT模板广场-PPT模板-word文档模板-excel表格模板

html5使用template标签定义可复用模板 html5使用模板片段的方法147

查看详情 html5使用template标签定义可复用模板 html5使用模板片段的方法

const template = document.getElementById('user-card-template'); const container = document.getElementById('container'); // 放置模板实例的容器  // 示例数据 const users = [   { name: 'Alice', email: 'alice@example.com', avatar: 'alice.jpg' },   { name: 'Bob',   email: 'bob@example.com',   avatar: 'bob.jpg' } ];  users.forEach(user => {   const clone = template.content.clonenode(true); // 克隆模板内容   clone.querySelector('.username').textContent = user.name;   clone.querySelector('.email').textContent = user.email;   clone.querySelector('.avatar').src = user.avatar;   container.appendChild(clone); // 插入到 DOM });

每次调用 cloneNode(true) 都会创建一份独立的模板副本,避免相互影响。

适用场景与优势

template 标签适合以下情况:

  • 需要多次生成相似结构的内容(如评论列表、商品卡片)
  • 前端模板替代方案,避免拼接字符串 HTML
  • 提升代码可读性和维护性
  • 与 Web Components 配合使用更强大

相比 innerHTML 字符串拼接,template 更安全、结构更清晰,是现代前端开发中推荐的做法。

基本上就这些。合理使用 template 可以让 HTML 结构更整洁,js 操作更直观。

以上就是

text=ZqhQzanResources