こんばんは。
私はHTMLに関しては、簡単なホームページを作る事ができる程度です。お手柔らかにお願いします(^^)。
私は自分のホームページを持っているのですが、大体のデザイン(外枠)をHTML等に詳しい友人に作ってもらって、その中だけをいろいろいじくっています。
ホームページの内容はコンテンツの部分と、メニューの部分が分かれています。よくあるフレームで分かれているような感じなのですが、実際はフレームを利用しておらず、すべてのページに同じHTMLデータが打ち込まれています。しかし、これでは「メニュー」部分に変更があればすべてのページを変更させなくてはならず非常に面倒です。
そこで、フレームのように、別のところで「メニュー」の内容をいじくれば、すべてのページに変更が反映されるような方法はありますか?フレームは使いたくありません。宜しくお願いします。
(「できない」なら「できない」とズバッとお願いします!)
No.2ベストアンサー
- 回答日時:
できることはできます。
簡単な方法ならメニュー部分をJavaScriptで書き出すようにすればスクリプトファイルを修正するだけで全部のhtmlファイルに反映されます。
たとえば
Menu='<a href="menu1.html">menu1</a>\n'
+'<br>\n'
+'<a href="menu2.html">menu2</a>\n'
document.write(Menu);
と書いたスクリプトファイルをmenu.jsとでもして保存し、htmlのメニューの部分に
<script language="JavaScript" src="menu.js"></script>
と書けばスクリプトファイルのhtmlがブラウザで表示されます。
なのでスクリプトファイルだけを修正すれば何十ファイルあろうがすべてのファイルに反映されます。
ちょっと難しかったですかね^^;
もっと簡単にはDreamweaverなどのソフトを使えば一括に置換してくれる機能があるのでそれで修正したほうが簡単かも。
No.4
- 回答日時:
私のやっている簡単な方法は、
画像に項目を配置して項目からリンクしたメニュー(
クリッカブルマップ)を一つ作っておいて、これを各ページにコピペします。表示の位置はテーブル中にいれて決めます。
変更したときは、一つだけ修正してコピペで入れ替えします。
10ページ位なら全然手間ではありません。
No.3
- 回答日時:
私もメニューは面倒臭く感じていました。
そこでこんなものを作りました
ご参考になればと思います。
使いまわしが出来るように---部で4つあり、2つ目を変更するだけで
使えるようになっています。
ただ、所詮JavaScriptですからクローラはリンクをたどりませんし、noscriptに代替リンクを貼ると結局同じなんですけどね。
--------------------------------------
NowURL = unescape(window.location);
--------------------------------------
SiteTitle = "サイトタイトル";
ContentsName = new Array(3);
ContentsName[1] = "Contents1";
ContentsName[2] = "Contents2";
ContentsName[3] = "Contents3";
FileNameList = new Array();
FileNameList[1] = new Array("/Contents1/page1","/Contents1/page2","/Contents1/page3","/Contents1/page4","/Contents1/page5");
FileNameList[2] = new Array("/Contents2/page1","/Contents2/page2","/Contents2/page3","/Contents2/page4","/Contents2/page5");
FileNameList[3] = new Array("/Contents3/page1","/Contents3/page2","/Contents3/page3","/Contents3/page4","/Contents3/page5");
PageTitleList = new Array();
PageTitleList[1] = new Array("Page1Title","Page2Title","Page3Title","Page4Title","Page5Title");
PageTitleList[2] = new Array("Page1Title","Page2Title","Page3Title","Page4Title","Page5Title");
PageTitleList[3] = new Array("Page1Title","Page2Title","Page3Title","Page4Title","Page5Title");
------------------------------------------------
StartAnchorTag = '■<a href="./index.html">';
EndAnchorTag = '<\/a><br>';
if(NowURL.indexOf("abc.com/index") >= 0){
StartAnchorTag ='■';
EndAnchorTag = '<br>';
}
document.open();
document.write('●' + '<b>' + SiteTitle + "メニュー" + '<\/b><br>');
document.write(StartAnchorTag);
document.write("トップページ");
document.write(EndAnchorTag);
for(j = 1;j < ContentsName.length;j++){
document.write('□<a href="JavaScript:ok(' + j + ');">');
document.write(ContentsName[j]);
document.write('<\/a><br>');
document.write('<ul id="tree' + j + '"class="menu" style="display:none;">');
for(i = 0;i < FileNameList[j].length;i++){
StartAnchorTag = '<a href=".' + FileNameList[j][i] + '.html">';
EndAnchorTag = '<\/a>';
if(NowURL.indexOf(FileNameList[j][i]) >= 0){
StartAnchorTag ='<b>';
EndAnchorTag = '<\/b>';
}
document.write('<li>');
document.write(StartAnchorTag);
document.write(PageTitleList[j][i]);
document.write(EndAnchorTag);
document.write('<\/li>');
}
document.write('<\/ul>');
}
document.close();
----------------------------------------------
function ok(n){
id="tree"+n;
if(navigator.appName == "Netscape"){
if(document.getElementById(id).style.display == "none"){
document.getElementById(id).style.display="block";
}else{
document.getElementById(id).style.display="none";
}
}
else if((navigator.appName.indexOf("Microsoft")>=0)||(navigator.appVersion.charAt(0)>=4)){
if(document.all(id).style.display == "none"){
document.all(id).style.display="block";
}else{
document.all(id).style.display="none";
}
}
}
-------------------
IE6なら動くと思いますよ。
内容については勝手に解釈してくださいね。
ありがとうございます。
私はそこまでプログラム等に詳しくないので、詳しい友人に聞いて、教えてもらいます。わざわざありがとうございました。
No.1
- 回答日時:
SSIのincludeコマンドという物を使うと、思っていらっしゃるようなことが出来ます。
ただ、お使いのサーバーでSSIが使えるようになっていないと駄目なんですけどね。
参考URL:http://www.scollabo.com/banban/ssi/ssi_005.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Qoo10で注文をキャンセルしたら...
-
http://cloth-gallery.net/inde...
-
インターネット用語について教...
-
スクリーンショット
-
忍者アドマックスは無料ですか?
-
ASPについて ネットでよく見か...
-
画像録画ソフト Apower RECの解...
-
有料サイトの開設方法
-
FC2 BLOG <AUDIO TAGを入れプ...
-
ホームページ
-
サーバーログイン情報とFTP接続...
-
自分のドメインが他者のサイト...
-
インターネットの環境をポケッ...
-
Slackの料金体系に詳しい方教え...
-
アフェリエイトって登録したサ...
-
任意団体名でも開設できますか
-
あいみょんというワードが検索...
-
イントラネットを構築したい
-
FC2掲示板に広告を表示させる方...
-
iPhoneで見れるホームページが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
pdfファイルへの直リンクからリ...
-
ASPファイルの編集
-
エクセルの表がウェブに反映さ...
-
HP制作管理会社が倒産したの...
-
自社のホームページにPDFに...
-
ホームページ丸ごとダウンロード
-
HPに自作の小説を載せたいので...
-
pdfファイルのダウンロードのさ...
-
BitTorrentについて質問です。
-
昔作ったサイトをビルダー15に...
-
pdfのファイルを友人がを作って...
-
知人のパソコンに大量のデータ...
-
スイッチのバックアップリスト...
-
Wordファイルを2ページおきに別...
-
別のパソコンからもHPの管理...
-
FC2ホームページの編集について
-
PowerPointでWeb公開できる?
-
「ファイルのダウンロード」ダ...
-
アップロードって、何ですか?
-
ホームページをディレクトリご...
おすすめ情報