目錄
模板標籤做什麼
基本用法示例
使用模板時的要點
高級:帶有數據屬性或插槽的預填充模板
首頁 web前端 H5教程 如何使用HTML5模板標籤

如何使用HTML5模板標籤

Aug 31, 2025 am 08:23 AM
html5

HTML5 標籤存儲惰性,可重複使用的HTML內容,可以用JavaScript克隆;它一直沒有煩惱,直到編程插入為止,它是動態生成產品卡(例如無需重新加載或硬編碼)的元素的理想選擇,並且它支持高級功能,例如數據屬性和插槽,用於靈活,有條理和性能的DOM操作。

如何使用HTML5模板標籤

HTML5 <template></template>標籤是一種存儲HTML內容的方便方式,您不想在頁面加載時立即呈現。相反,您可以在以後使用JavaScript克隆並插入此內容。它非常適合動態添加諸如卡,表單或列表項目之類的元素,而無需重複反复或從外部來源獲取HTML。

這是有效使用它的方法。

模板標籤做什麼

<template></template>元素保存的內容是:

  • 文檔加載時未在頁面上渲染
  • 解析但惰性- 腳本不運行,圖像不加載,自定義元素未升級。
  • 可在需要時通過JavaScript克隆

這使得它非常適合在即時創建的可重複使用的UI組件。

基本用法示例

假設您想將產品卡動態添加到頁面上。

 <template ID =“產品卡片 - 板”>
  <div class =“ product-card”>
    <h3 class =“ product-title”> </h3>
    <p class =“ product-price”> </p>
    <按鈕>立即購買</button>
  </div>
</template>

<div ID =“ product-container”> </div>

現在使用JavaScript克隆模板並填充它:

 //獲取模板和容器
const template = document.getElementById(&#39;product-card-template&#39;);
const容器= document.getElementById(&#39;product-container&#39;);

//功能添加新產品
功能addProduct(標題,價格){
  //克隆模板內容
  const clone = document.importnode(template.content,true);

  //更新克隆的元素
  clone.queryselector(&#39;。product-title&#39;)。 textContent = title;
  clone.queryselector(&#39;。product-price&#39;)。 textContent =`$$ {price}`;

  //附加到容器上
  Container.AppendChild(clone);
}

//添加一些產品
AddProduct(“筆記本電腦”,999);
AddProduct(“鼠標”,25);

現在出現了兩張產品卡 - 從模板創建。

使用模板時的要點

  • 使用document.importNode()template.content.cloneNode()
    始終克隆模板的.content (這是DocumentFragment範圍)。這避免了修改原始模板。

  • 深克隆與true
    true作為第二個參數將其傳遞給importNode()cloneNode()以確保複製所有子節點。

  • 模板不限於一種用途
    您可以使用相同的模板在應用程序上創建多個實例。

  • 與Shadow DOM和Web組件合作良好
    模板通常在自定義元素中用於定義內部結構。

  • 無需使用CSS隱藏模板
    <template>內部的內容不會自動顯示 - 無display: none

高級:帶有數據屬性或插槽的預填充模板

您可以使用data-*屬性或<slot>元素設計更靈活的模板(特別有用Web組件)。

 <template ID =“用戶卡”>
  <div class =“用戶卡”>
    <img src =“” alt =“” class =“ avatar”>
    <h2 class =“ name”> </h2>
    <span class =“角色” data-lole> </span>
  </div>
</template>

然後根據JavaScript中的需要填寫包括srcalt和數據屬性在內的值。


基本上, <template></template>標籤為您提供了一種干淨,性能的方法來管理可重複使用的HTML。它不是浮華的,但是它可以使您的DOM保持清潔和動態內容。

以上是如何使用HTML5模板標籤的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Stock Market GPT

Stock Market GPT

人工智慧支援投資研究,做出更明智的決策

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何使用HTML5向您的網站添加Favicon 如何使用HTML5向您的網站添加Favicon Aug 27, 2025 am 02:35 AM

要正確添加網站favicon,首先準備一個32×32或64×64像素的.ico、.png或.svg格式圖標文件並命名為favicon.ico等,將其放在網站根目錄或指定路徑,然後在HTML的標籤中使用明確聲明,例如:,推薦同時支持多種格式和設備,如添加PNG不同尺寸版本、SVG圖標以及Apple觸控圖標,最後清除緩存並測試是否正常顯示,確保路徑正確且文件可訪問,整個過程需注意文件格式、路徑和兼容性以避免加載失敗。

Forest Protocol(FOREST幣)是什麼?怎麼樣? FOREST代幣經濟模型及市場前景分析 Forest Protocol(FOREST幣)是什麼?怎麼樣? FOREST代幣經濟模型及市場前景分析 Sep 05, 2025 am 09:09 AM

目錄ForestProtocol的誕生背景交互型代幣(PlayableTokens)的創新技術架構CampaignOS:將代幣變成“可玩產品”Launchpad和AMM:無需曲線,無需遷移,立即上線飛輪與費用:將使用量和收入轉化為回購和銷毀CampaignOS的作用與價值Launchpad與AMM的機制$FOREST的代幣經濟模型$FOREST的價值來自哪裡最新價格與市場前景路線圖:從模板

HTML5中的佔位符屬性是什麼? HTML5中的佔位符屬性是什麼? Aug 31, 2025 am 06:58 AM

Theplaceholderattributeprovidesashorthintininputfieldsthatdisappearswhentypingbegins;1.Itisusedinandelementstoshowexampletextlike"Enteryouremail";2.Thehintisdisplayedonlywhenthefieldisemptyandstyledfaintlybybrowsers;3.Itdoesnotreplacetheele

內容安全策略(CSP)如何與HTML5一起使用? 內容安全策略(CSP)如何與HTML5一起使用? Aug 30, 2025 am 01:29 AM

CSPenhancesHTML5securitybydefiningtrustedcontentsourcestopreventXSS,clickjacking,andcodeinjection.1.Itrestrictsinlinescriptsandstylesbyblockingthemunless'unsafe-inline',nonces,orhashesareused.2.Itcontrolsexternalresourcesviadirectiveslikescript-src,i

如何使用HTML5模板標籤 如何使用HTML5模板標籤 Aug 31, 2025 am 08:23 AM

TheHTML5tagstoresinert,reusableHTMLcontentthatcanbeclonedwithJavaScript;itremainsunrendereduntilprogrammaticallyinserted,makingitidealfordynamicallygeneratingelementslikeproductcardswithoutreloadingorhardcoding,anditsupportsadvancedfeatureslikedataat

如何使用HTML5可符合性屬性 如何使用HTML5可符合性屬性 Aug 23, 2025 am 09:55 AM

ThecontenteditableattributemakesHTMLelementseditablebyaddingcontenteditable="true"toelementslikediv,p,orh1–h6.2.UseJavaScripttoretrievecontentviainnerHTMLforformattedtextortextContentforplaintext.3.Listenforchangesusingtheinputeventtocaptur

HTML5中的文章和部分有什麼區別? HTML5中的文章和部分有什麼區別? Aug 22, 2025 am 08:29 AM

使用useforsef,獨立的,獨立的distributableContentLikeBlogPostsorments; 2.使用forthematicGroupingSofContentsUchaspagaPagaPapTerSorrelatedContentBlocks; 3. 3.sissmantallystimplysplationallicationallystementedanderansable,而erorganizesContentStentWithInalArgerContextExt; 4. 4.chooseosebassead; 4.Choosebassedbaseed

如何正確使用HTML5 NAV標籤 如何正確使用HTML5 NAV標籤 Aug 22, 2025 am 01:36 AM

使用標籤定義網頁主要導航鏈接區塊,提升可訪問性和SEO;2.僅在主導航菜單、側邊欄鏈接、分頁或目錄等主要導航區域使用,而非每個鏈接;3.將鏈接包裹在內,推薦用或組織鏈接以增強語義和可訪問性;4.避免過多或不必要的區塊,確保結構清晰;5.為多個添加aria-label以區分用途;6.不要將非導航內容如版權信息放入,且避免遺漏鏈接列表的結構化標記。正確使用能有效提升網站的可用性和組織性。

See all articles