私は初心者ですが、この 2 日間を読書に費やしてきたので、これに関することもあるかもしれません。読めば読むほど混乱します。従うべき簡単な指示や例、またはこの非常に重要な問題の簡単で完全な答えを見つけることができません。
を使用して一般的な JavaScript ファイルをインクルードしたいだけですsrc=
。次に、このツリーをサーバーにコピーするときに、コードを変更したくありません。ツリー レイアウトを変更するたびに HTML ファイルを編集したくないので、相対パスを使用したくありません。ツリーがサーバー上にあるときだけでなく、開発中に自分の PC にローカルにあるときにも機能する 1 つのソリューションが必要です。
私は高度なものや派手なものを探しているわけではありません。しかし、非常に単純な解決策です。私が望むのは、ツリーにあるすべての HTML ファイル間で共通の JavaScript ファイルを使用できるようにすることだけです。
$HOME
問題は、またはまたは環境変数などを使用できないため~
、自宅の PC で同じコードが機能するように、またそれを個人の Web サイトにアップロードするときに、どのようにロードするかです。 .
これに簡単に答えられるように、私の PC でのレイアウトを示します。
C:/public_html/common_files/common.js
C:/public_html/report/index.htm
サーバー上で、私のサイトが と呼ばれているとします。ftp でそこにアクセスwww.ABC.com
すると、そこpublic_html/
にすべてを配置することになっているフォルダーが表示されます。サーバー上で、上記と同じセットアップを作成しました
/public_html/common_files/common.js
/public_html/report/index.htm
ここまでは順調ですね。今、難しい部分です。
index.htm ファイルから common.js をロードするにはどうすればよいですか? を使いたくないのですがsrc=../../common_files/common.js
、なぜですか? ツリーのレイアウトを変更したい場合があり、レポートを別のレベルに移動した場合、レポートを編集したくないので、パスを変更して "../../../../. .」など。
私は多くのことを見ましたが、ResolverURL
それを使用する方法がわかりませんでした。
私は試した
<script src="<%=Page.ResolveUrl("~/")%>public_html/common_files/common.js"></script>
しかし、うまくいきませんでした。これは PC とサーバーで動作する必要があることを忘れないでください。
これが私の現在の index.htm です。
<!DOCTYPE HTML>
<html>
<head>
<script src="../common_files/common.js"></script>
</head>
<body>
my site
</body>
</html>
私が探しているものを説明するために、$HOME がこの環境で動作すると仮定します。
<!DOCTYPE HTML>
<html>
<head>
<script src="{$HOME}/common_files/common.js"></script>
</head>
<body>
my site
</body>
</html>
これは、PC とサーバーで動作します (少なくとも、Linux を使用する PC では動作します)。しかし、上記は私が探しているものの例にすぎません.Windowsでは、 $HOME がどこにあるのか、それがどのように使用されているのかわかりません。
質問: 上記を変更してsrc
をロードし、common.js
相対パスを使用せずに PC とサーバーの両方で動作するようにするにはどうすればよいですか?
表示するリンクや部分的な回答を提供したり、これを実行するための商用ソフトウェアや複雑な非常に高度なコマンドをダウンロードするように依頼したりしないでください。この問題は非常に基本的なものであり、解決策は簡単に理解できるはずです。