まず複数のページに共通の項目を外部ファイルに置いて、更新、訂正作業を軽減したいと思っています。
共通の部分が8項目あるのですが、全て
document.write(".....")
で表現できるような簡単な内容です。(あいさつ文、リンクなど)ようするにただ表示するだけ・・・
最初は1つの項目につき、1つの外部ファイルを・・・と考えていたのですが、外部ファイルが多くなってきたのでひとつにまとめれないかなと・・・
8項目をページのいろいろな場所にレイアウトするつもりなので、関数を設定して呼び出せばいいのかな?とまでは考えたのですが、どうやって呼び出せばいいのかがわかりません。というのは、できれば<form>を使いたくないのです。
function kyotu1(){document.write("こんにちわ~");}
function kyotu2(){document.write("<a href='xxx.html'>home</a>")
・
・
こんな感じですが、何かアドバイスがあればよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
おそらく、質問文中にあるような、関数に処理をまとめておいて、その関数を呼び出すことで対処することは可能と思います。
それを外部ファイルに記述しても同様に扱えるのではないかと思いますよ。内容を書き出す関数を外部ファイルにまとめた場合、それを組み込むのは1回で十分で、後の任意の場所に文字列等を書き出すのはその関数を呼び出せばよいと思います。
とりあえず、head内で
<script src="***.js" type="text/javascript"></script>
のように記述して外部ファイルを組み込んでおき、共通のソースを書き出すところではその外部ファイルに組み込まれた関数を呼び出せばよいと思います。
<script type="text/javascript"><!--
kyotu();
//--></script>
ただ、この場合は配列に共通項目をまとめて入れておいて、それを関数から読み出す形にする方がスマートにまとめられるかと思います。 この場合、関数を呼び出す時にどの配列から値を取り出して利用するかを指定するための引数を渡す必要がありますが、外部スクリプトはすっきりとした形で記述できるのではないかと思います。
一例として…
var msg= new Array();
msg["salue"]="こんにちは~";
msg["link"]="<a href='xxx.html'>link</a>";
function msgWrite(i){
document.open();
document.write(msg[i]);
document.close();
}
これを外部Javascriptファイルとして保存し、HTMLの側でこれをあらかじめ呼び出しておきます。
HTMLファイルの共通項目を書き出す部分では、
<script type="text/javascript"><!-- msgWrite("salue"); //--></script>
<script type="text/javascript"><!-- msgWrite("link"); //--></script>
以上のスクリプト要素を埋め込みます。
なお、配列のキーとしては、番号以外に文字列を使うことも可能で、配列を連想配列のように扱うことも可能です。 今回のケースでは、そこに書き出す内容との整合性を考えた文字列をキーとして扱うことで、ソースの管理をよりわかりやすい形で行うことができると思うので、このような形を提案してみました。
こういったソースではいかがでしょうか?
参考になれば幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- JavaScript javascriptで変数を組み込みたい 2 2023/01/13 09:52
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- その他(IT・Webサービス) google サイトの目次表示について 1 2023/06/17 23:24
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript html javascriptにてWeb SQLを操作したい。 2 2022/12/16 17:43
- HTML・CSS HTMLタグのあるCSVファイルを利用する方法 4 2023/03/19 14:41
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
cssにjavascriptを入れる?呼び...
-
<script src="">読み込まない
-
JavaScriptのエラー ( 関数の...
-
JavaScriptで外部htmlをインク...
-
jQueryが開かない
-
複数のJavascriptを1つのscrip...
-
別ファイルのfunctionの読み込み方
-
外部ファイルを読み込ませるた...
-
javascriptファイルは1つに統...
-
JavaScript内の関数を別のファ...
-
<a href="#" …>の意味を教えて...
-
ポップアップウィンドウの位置
-
submitボタンで他のフレームを...
-
JavaScriptでiframeの内容を「...
-
(Javascript)印刷するファイル...
-
確認ダイアログで「キャンセル...
-
ブラウザをJavaScriptで最小化…
-
ウィンドウ名の設定
-
SCRIPT5007: 未定義または NULL...
-
bodyタグって2重にしようするこ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
cssにjavascriptを入れる?呼び...
-
javascriptとApacheの設定
-
プルダウンメニューを別ファイ...
-
レンタルサーバーでjavascript...
-
初心者です。あまりに初歩的な...
-
JavascriptとJqueryを混在し記述
-
Dreamweaver で 外部JSを読み込...
-
JavaScriptのエラー ( 関数の...
-
複数のJavascriptを1つのscrip...
-
javascriptファイルは1つに統...
-
別ファイルのfunctionの読み込み方
-
JavaScriptの外部ファイル読み込み
-
processing
-
ホームディレクトリを示すチル...
-
【Google Apps Script】「ライ...
-
エラー行の行数の不思議
-
<script src="">読み込まない
-
ひとつの外部ファイルに複数の...
-
静的と動的なJavascriptの同時...
-
外部.jsの内容を一部置き換えて...
おすすめ情報
