requireJS には、baseURL というプロパティがあります。baseURL を設定することで、現在のページではなく、プロジェクトを基準にして読み込むファイル パスを記述できます。 たとえば、プロジェクト ディレクトリが /myproject/ で、その中に 2 つのページがあり、1 つは /myproject/one.html、もう 1 つは /myproject/html/other.html で、両方のページが /myproject/js/some.js を読み込む必要があるとします。 baseURL を /myproject/ に設定すると、js をロードするときに、ページ パスが異なるために異なる相対パスを使用するのではなく、両方のページでプロジェクトに対する相対パス ./js/some を使用できます。 しかし、requireJS を使用しない場合、baseURL と同様の機能を実現できるでしょうか? ベースタグ コードをコピー コードは次のとおりです。<html> <ヘッド> <base href="http://static.cnblogs.com/" /> </head> <本文> <img src="./images/logo_gray.gif" /> </本文> </html> 相対パス ./images/logo_gray.gif を使用してロードした画像は、画像 http://static.cnblogs.com/images/logo_gray.gif になることがわかります。 ベース タグは、ページのリンクにデフォルトのパスまたはデフォルトの開く方法を追加できます。 デフォルトの開く方法を設定する例を次に示します。 コードをコピー コードは次のとおりです。<html> <ヘッド> <ベースターゲット="_blank" /> </head></p> <p><body> <a href="http://www.cnblogs.com">このページは新しいウィンドウで開きます</a> <a href="http://justany.cnblogs.com">このページも新しいウィンドウで開きます</a> </本文> </html> バグ ベース タグを動的に記述しないことをお勧めします。そうしないと、http://localhost/static/test.html のページのように、Firefox と IE で小さなバグが発生します。 コードをコピー コードは次のとおりです。<html> <ヘッド> <スクリプト> document.write('<base href="http://localhost/" />'); </スクリプト> </head></p> <p><body> <img src="static/1.jpg" /> </本文> </html> Firefox と IE は、最初に http://localhost/static/static/1.jpg を読み込み、次に http://localhost/static/1.jpg を読み込みます。つまり、まず現在のページを基準としたパスで読み込みを試み、次にベース タグで設定されたデフォルトのパスで読み込みを試みます。 Chrome は正常に読み込まれます。 Firefox が正しく読み込まれません。 なぜ? これについて、適切な説明が見つかりませんでした。私たちの分析では、ブラウザがリソースの読み込みを最適化しているため、動的に挿入されたベース タグが有効にならないときに、ブラウザがリソースを事前読み込みすることになります。その結果、エラーが発生し、その後、ベース タグが有効になり、正しいリソースが読み込まれます。 どうすれば回避できるでしょうか?ベースタグを動的に記述しなくても問題ありません。ベース タグを動的に記述する必要がある場合は、ページによって参照されるすべての外部リソースを JavaScript を通じて動的に読み込む必要があります。 |
この記事では主にTomcatプロセスを記録し、TCP接続が多すぎることによるCPU使用率の過剰のトラ...
HTML: タイトル見出しは <h1> - <h6> などのタグによって定...
シンプルな Linux 推測ゲームのソースコードゲームのルール:数字当てゲームは通常 2 人でプレイ...
目次関数フォーマットを即時実行関数を即座に実行する他の方法 – 式即時実行される関数はパラメータを取...
サイト上のページを表示するためのリクエストがサーバーに送信されると(たとえば、ユーザーがブラウザでペ...
目次セマフォNginx ホットデプロイメント上記のブログ投稿に従ってください。ファイアウォールをオフ...
Docker には多くのログ プラグインがあります。デフォルトでは json-file を使用します...
場所表現タイプ~ は大文字と小文字を区別して通常の一致を実行することを示します~*は大文字と小文字を...
フロントエンド開発者としては、IEの落とし穴は避けて通れません。他のブラウザはいいのにIEは壊れてい...
一般的に、MySQL はデフォルトでさまざまなストレージ エンジンを提供しており、次のように表示され...
序文Linux では、スワップ パーティションとスワップ ファイルの 2 種類のスワップ領域を作成で...
1. 解凍版のインストール(1)圧縮パッケージをダウンロードし、ディスクの場所に解凍します。圧縮パッ...
MySQL による CPU 負荷の上昇今日の午後、MySQL によってサーバーの負荷が高くなる問題を...
目次序文ディープページングを制限すると遅くなるのはなぜですか?サブクエリによる最適化B+ツリー構造の...
私は長い間PHPに触れてきましたが、インストール環境は非常に不慣れです。多くの問題に遭遇しました。B...