有没有一种(简单的)方法从HTML中的另一个文件导入元数据?
我有几十页都有相同的标题。当我添加或更新链接或元数据时,我不想更新每个文件。
在阅读了these answers之后,我尝试了:<link rel="import" href="/html/content.html">
。它适用于<link href=
或<link rel=
,但不导入meta
。
同时,我创建了一个PHP函数来回显每个页面中的页眉,但我更喜欢纯HTML解决方案。
发布于 2018-07-03 05:43:34
导入HTML文件后,必须将其内容插入到主文件中。
<head>
<script>
function inject( import ) {
document.head.appendChild( import )
}
</script>
<link rel="import" href="/html/content.html" onload="inject(this.import)">
</head>
或者,您也可以将脚本部分放在导入的文件中,因为它在加载时就会被解释。
content.html文件中的示例:
<template>
<script src="link1.js"></script>
<meta name="author" value="someone">
...
</template>
<script>
var template = document.currentScript.querySelector( 'template' )
document.head.appendChild( template.cloneNode( true ) )
</script>
注意:最好将所有内容放在<template>
中,这样内容将保持未激活状态,直到它被插入到主文档中。
https://stackoverflow.com/questions/46845413
复制相似问题