有没有在另一个 HTML 模板元素中使用 HTML 模板元素的示例?
好的,这是一个简单的例子:
这是我的主文件index.html,我在其中导入header.html并克隆其中的模板并将其附加到我的主div:
<!DOCTYPE html PUBLIC "_//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xhtml="http://www.w3.org/1999/xhtml" lang="en-us" xml:lang="en-us">
<head>
<meta content="text/html; charset=utf-8" http-equiv="content-type">
<link id="imported-header" rel="import" href="static/components/header.html">
</head>
<body>
<div class="master"></div>
</body>
<script>
var headerImp = document.querySelector('#import-header').import;
var headerTemp = headerImp.querySelector(".header");
var header_01= headerTemp .content.cloneNode(true);
document.querySelector(".master").appendChild(header_01);
</script>
</html>
然后在我的header.html中,我导入另一个 HTML 并将其添加到模板中(我觉得在另一个模板中调用 document 是错误的模板,但我可能是错的。):
<link id="import-field" rel="import" href="static/components/credit_field.html">
<template class="header">
<div class="credit"> </div>
</template>
<script>
var creditImp = document.querySelector('#import-field').import;
var creditTemp = creditImp.querySelector(".field");
var credit_01 = creditTemp.content.cloneNode(true);
credit_01.querySelector(".row").innerHTML = "User1";
var credit_02 = creditTemp.content.cloneNode(true);
credit_02.querySelector(".row").innerHTML = "User2";
document.querySelector(".credit").appendChild(credit_01);
document.querySelector(".credit").appendChild(credit_02);
</script>
这是credit_field.html只是一个包含该字段的模板:
<template class="field">
<div class="row"></div>
</template>
显然加载它没有任何错误,但它给了我导入错误!只是为了记录,如果我将它们都导入到我的 index.html 并将它们附加到那里,它会工作得很好,但我正在寻找一种在另一个模板中拥有模板的方法。
再次澄清我的问题,我想知道如何在另一个 HTML 模板元素中添加一个 HTML 模板元素?
注意:我见过有人使用 Django 模板,但我想在 HTML、JavaScript 和 jQuery 中对其进行排序以避免复杂性。