- ベストアンサー
ソース一括変更
現在、ホームページを作成中の者です。 自分で作成した案内ページの記述の一部をHOMEに掲載しようと思っています。しかし、毎度案内ページを変更するごとにHOMEも同じように変更するのは非常にめんどうです。それを省略したいと思っているのですがそのような方法はあるでしょうか?? ↓詳しく↓ 案内ページ.html(名前は例)の一部の文章(スクリプト)をHOME(index)で読み込ませることにより、案内ページを編集するだけでHOMEの掲載文章が変わる。そんなシステムがほしい!! 略図(こんな風にしたい!!例) 紹介ページ.html ------------------------------------------------------- NEW!!PC紹介!!。<BR> <!----↓からindexに抜き出し> DELL 530<BR> このPCは~~~~~~<BR> IBM 220<BR> このPCは~~~~~~~~<BR> <!-----ここまで抜き出し!!----> ------------------------------------------------------- index.html ------------------------------------------------------- ようこそ!!<BR> PCNEWS!! <!----紹介ページの情報を↓で公開----> 何らかの方法 <!----ここまで----> --------------------------------------------------------- わかりにくい説明でスミマセン。 たぶんJAVASCRIPTだと思ったのでこのカテゴリーで質問しましたが、JavaScriptではない方法でもかまいません。 ご回答よろしくお願いいたします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
JavaScriptでは拡張子にjs(JavaScript)とついたファイルを外部から呼び出して使うことが出来ます。これを使うと複数のファイルの同時修正が一回で出来ます。 やり方は、 ・呼び出される側のjsファイル(複数の箇所に使いたいファイル)を作ります。新規作成⇒テキストエディタで新規作成します。そこに、 document.write("複数箇所に使いたい文章"); とだけ書きます。エンコードするときは、htmlだったらUnicodeですが、jsファイルの場合はUTF-8でないと文字化けします。 ・呼び出す側のソースは、<body></body>の間に <script type="text/JavaScript" src="jsファイルのパス"></script> と書きます。パスの例は、相対パスの場合「test.js」みたいな感じです。完了です。 これで出来ると思います。参考にしたページです。 http://allabout.co.jp/internet/javascript/closeup/CU20030521/index.htm#3
その他の回答 (5)
No. 5です。 書き方が悪くて誤解を招いてしまったかもしれません。(1)はXMLという名前がついていますが、扱う内容はXMLに限りません。HTMLでもtextでも構いません。(2)は確かにXMLになります。しかし、ローカルでHTMLに変換してからアップすることもできますので、サーバが対応しているかどうかという心配はないはずです。 No.2の方のものがわかりやすいとのことのでそれで試していただき、もう少しJavascriptに慣れた頃、あるいは扱う内容が増えてコードを書くのが大変になってきた頃に、そういえば他にもあったなと思い出していただくひとつになれば幸いです。
お礼
ご回答感謝します。 落ち着いたらこちらの方法も試してみようと思います。
こんにちは。 私もNo.1さん同様に、案内ページとhomeの両方から一つのファイルの内容を参照するのが簡単だろうと思います。 これまでに挙げられていない方法としては (1) XMLHttpRequestを使う これはJavascriptでファイルを読み出す動的な方法です。 非同期通信に使われて注目されていますが、ご希望の用途にも使用可能かと思います。 (2) XMLでパーツを書いておき、XSLTで組み合わせて最終的なHTMLファイルを作成する これは静的な方法です。JavascriptをOFFにしていても表示されます。 ソースファイル(XML)をルール(XSL)に従ってHTMLファイルに変換するというプロセスになります。 従って、XSLTプロセッサ(無料で手に入ります)が必要があります。 (最近の新しいブラウザであれば、適切にソースを書けば、XSLTプロセッサによる変換不要で直接表示してくれます) 詳しく書くとすこぶる長くなってしまうので、XMLHttpRequest, XSLT などで検索して例をご覧になってみてください。
お礼
なるほどXMLですか。 XML+HTMLは理解できるのですが、XMLに関しては無知識なので使用する場合習得に時間が必要そうです。また自社サーバーにUPするわけではない(ジオシティーズ+)ので、対応しているかの問題点もあります。
NO2です。書き忘れましたが、jsファイルを作るときは拡張子を「***.js」にしてください。編集するときはまた「***.txt」にすれば編集できます。
お礼
補足ありがとうございます!!
- pick52
- ベストアンサー率35% (166/466)
(インライン)フレームやSSI、またはPHPなどを利用した方がいいような 気がします。 サーバ側の依存性がまずないのはインラインフレームを使用する方法 ですが、クライアント依存です。 SSIやPHPなどはサーバ側が対応していないとできません。 インラインフレームを使用する方法が最も技術的にも簡単で、 分かりやすいかなと思います。 こんな感じでしょうか。 <iframe src="URL" width="100%" height="20"> フレームに対応していない場合は <a href="URL">URL</a> をご覧ください。 </iframe> http://www.tohoho-web.com/html/iframe.htm
お礼
PHPとはCGIのことでしょうか?? ジオシティーズ+を利用しているのでたぶん可能だと思います。 あとは実験あるのみです。 ご回答ありがとうございます。
- cipher_roy
- ベストアンサー率46% (411/893)
どうせなら、ホームページと案内ページのどちらからも外部の 案内テキストを保存したファイルを引っ張るスクリプトを 仕込んだ方が早いような気がします。 呼び出しスクリプトは貴方が使いこなせるならjavascriptでもphpなど でも、構わないと思います。
補足
ご回答ありがとうございます。 そのJAVASCRIPTの中の何を使えばいいかわからないのです。 JavaScriptに関してあまり詳しくないのです(;^ω^) よろしくお願いいたします。
お礼
おおお わかりやすい説明ありがとうございます。早速試してみます!!
補足
解決いたしました。 解決した方法を参考のために書いておきます。 .jsファイルの設定 document.write('testテスト');などと入力し、「test.js」で保存。 表示側のHTMLは、 <script type="text/JavaScript" src="jstest/test.js"></script> と打ち込んで終わり。 文字化けは私の場合しませんでした。 助かりました本当にありがとうございます!!