###サーバーを使わないローカル環境でのHTMLインクルード方法
HTMLとCSSを使い、ローカル環境でのWebサイトを開発しています。
Topページ(index.html)にてグローバルナビゲーション部に部品化したグローバルナビゲーションを外部HTML(nav.html)にて読み込みたいと考えています。
【ディレクトリ構造】
●ルートディレクトリ
1 html
1-1 page(ページごとのHTMLファイルを格納)
1-1-1 index.html
1-2 item(部品ごとのHTMLファイルを格納)
1-2-1 nav.html
2 css
2-1 page(ページごとのCSSファイルを格納)
2-1-1 index.css
2-2 item(部品ごとのCSSファイルを格納)
2-2-2 nav.css
3 images
使用しているブラウザはGoogle Choromeです。
バージョンは60.0.3112.101の64ビットです。
https://www.html5rocks.com/ja/tutorials/webcomponents/imports/
一番手ごろそうだと思い、このページを参考にnav.htmlをindex.htmlにインクルードしようとしました。
index.htmlのhead内に<link rel="import" href="../item/nav.html">
ここから先の実装方法を教えていただきたいです。
単純に読み込んでリロードした段階では以下のエラーメッセージが発生しました。
###発生している問題・エラーメッセージ
Access to Imported resource at '【ルートディレクトリ】/html/item/nav.html' from origin 'null' has been blocked by CORS policy: Invalid response. Origin 'null' is therefore not allowed access.
###該当のソースコード
index.html
<html> <head> <meta charset="UTF-8"> <link rel="stylesheet" type="text/css" href="../../css/page/index.css"> <link rel="import" href="../item/nav.html"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> </head> <body> <header> <h1>サンプル</h1> </header> <article id ="content_box"> <nav> <!-- ここにnav.htmlを表示させたいです。 --> </nav> </article> <fotter> </fotter> </body> </html>
nav.html
<html> <head> <meta charset="UTF-8"> <link rel="stylesheet" type="text/css" href="../../css/item/nav.css"> </head> <body> <ul id ="nav"> <li><a href="#" ontouchstart="">Home</a></li> <li><a href="#" ontouchstart="">About</a></li> <li><a href="#" ontouchstart="">Blog</a></li> <li><a href="#" ontouchstart="">Sitemap</li> </ul> </body> </html>
###補足
こっちのやり方がいい、ということであれば教えていただきたいです。
ただしiframe、サーバーサイドを活用するというやり方はなしでお願いします。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/28 06:44