HTML インポートは、一部の最新ブラウザーに搭載されています。したがって、最新のテクノロジーを実装したい場合は、数行のコードを書くだけで実装できます。
<link rel="import" href="import.html" onload="handleLoad(event)" onerror="handleError(event)">
onload
onerror
ページのステータスを記録するためのものです。(インポート ページがロードされているかどうか。)インポート ページ ( ) をタグに
ラップして、Javascript 変数に複製しました。import.html
<template>
import.html:
<template>
<h1>Hi there!</h1>
<h2>To use html-imports..</h2>
<h3>In Chrome 35 and below(in which you found the flag) you've to enable the flag: <span style="color: brown;">chrome://flags/#enable-html-imports</span></h3>
<h3>In Chrome 36 and Opera 23, it's supported by default. </h3>
</template>
インポートしたページを使用するには Javascript を使用する必要があります
// Thanks to http://www.html5rocks.com/en/tutorials/webcomponents/imports/
var link = document.querySelector('link[rel="import"]');
// Clone the <template> in the import.
var template = link.import.querySelector('template');
var clone = document.importNode(template.content, true);
document.querySelector('#getting-started-info').appendChild(clone);
function handleLoad(e) {
console.log('Loaded import: ' + e.target.href);
}
function handleError(e) {
console.log('Error loading import: ' + e.target.href);
}
link
インポート要素を取得するために変数が使用されます。
変数template
は から を取得するために使用され<template>
ますimport.html
。
変数は、 inclone
の内容を取得するために使用されます。
次に、コンテンツを a の ID に追加しようとします。また、多くのブラウザで表示されるはずのコンソールを介してインポート ページのステータスを通知するために使用されます。ここに記事
を書きました。
そして、github.com/krman009/html-imports で Github にリポジトリを作成しました。html5rocks 記事.
これがお役に立てば幸いです。<template>
import.html
<div>
handleLoad
handleError
DevTools