header.html
私はいくつかのHTMLファイルを持っていますが、たとえば、footer.html
DRYの概念を観察するために、それぞれを別のHTMLファイルに部分的にレンダリングしたいと思います。
HTMLファイルは次のようになります。
<!--render header.html-->
<div>
Content
</div>
<!--render footer.html-->
どうやってやるの?
header.html
私はいくつかのHTMLファイルを持っていますが、たとえば、footer.html
DRYの概念を観察するために、それぞれを別のHTMLファイルに部分的にレンダリングしたいと思います。
HTMLファイルは次のようになります。
<!--render header.html-->
<div>
Content
</div>
<!--render footer.html-->
どうやってやるの?
プレーンな HTML と Javascript だけを使用している場合は、jQuery を組み込み、AJAX 要求を使用して、別の HTML ページのコンテンツをメイン ページにロードできます。
ここで jQuery の「load()」関数を見てください。
次の html があると仮定します。
<div id="header"></div>
<div id="content"></div>
<div id="footer"></div>
使用法は次のようになります。
$('#header').load('header.html');
$('#footer').load('footer.html');
さまざまな言語でこれを行う方法を説明するリンク (Google からの最初のリンクを追加する可能性があります) を次に示します。
また、一部の IDE がこれを処理することにも注意してください。Dreamweaver はその一例です。ASP.NET にはマスター ページがあります。等々。
PHP:
<?php
require($DOCUMENT_ROOT . "path to file/include-file.html");
?>
ASP:
<!--#include file="path to file/include-file.html"-->
JS:
JavaScript は、サイトのページ内に HTML を含めるもう 1 つの方法です。これには、サーバーレベルのプログラミングを必要としないという利点があります。ただし、サーバー レベルのインクルード メソッドよりも少し複雑です。
サイトの共通要素の HTML を JavaScript ファイルに保存します。このファイルに記述された HTML は、document.write 関数を使用して画面に出力する必要があります。
スクリプト タグを使用して、ページに JavaScript ファイルを含めます。
<script type="text/javascript" src="ファイルへのパス/include-file.js">- ファイルを含めるすべてのページで同じコードを使用します。
JS バージョンは理想的
ではないことに注意してください。
1. ブラウザで JS が無効になっているか、使用できない可能性があります。
2. ページは一度にレンダリング/ロードされません。
また、DRY はこれには当てはまらないと思います。ページ テンプレートを作成する IDE の使用を検討してください (たとえば、Dreamweaver など)。
あなたが勇気があり (そして少し古臭い)、上記のいずれも使用できない場合は、コンテンツに iframe を使用することを検討してください。
<html>
<body>
<div>my header</div>
<iframe src="mycontent.html" />
<div>my fooder</div>
</body>
</html>
免責事項
iframe または JS アプローチを実装するよりも、自分の手を切り落としたいと思います。本当にこれを行う必要があるかどうかを深く検討してください。
html/js のみであるクライアント側のみのソリューションを探している場合は、AngularJS とそのngInclude
構文を確認する必要があります。
サーバー側プログラミングを使用している場合は、サーバー側インクルードを使用できます。ホスト ファイルが HTML ファイルの場合は、html SCRIPT タグを使用して、header.html および footer.html ファイルをインクルードできます。ただし、HTML ファイルを部分的にレンダリングすることで、実際に何を意味するのかよくわかりません。