0

含まれているバージョンでロードする必要がある CSS ファイルがあります。

 <link rel="stylesheet" href="../assets/css/jquery-ui.css?="+getVersion()/>

wheregetVersion()はバージョンを返す関数ですが、これは機能していません。

私も試しました:

<link rel="stylesheet" href="../assets/css/bootstrap.css?=javascript:getAppVersion()">
4

1 に答える 1

2

<link>私のコメントで述べたように、 「動的に」動作させるには、JavaScript を使用してタグ全体を含める必要があります。カプセル化せずに JavaScript コードを HTML に追加することはできません。

あなたがjQueryを使用していると露骨に仮定すると、これはそれを行う1つの方法です:

$( document ).ready(function() {

    /* Definition of getVersion() here*/

    $('head').append('<link rel="stylesheet" href="../assets/css/jquery-ui.css?='+getVersion()+'/>');
});

これは<link>、正しいバージョン番号を持つを含む文字列を<head>ドキュメントの に追加するだけです。

DOM の読み込みが完了するとスタイルシートが追加されるため、スタイルが設定されていないマークアップの短い不具合が表示される場合があることに注意してください。

もちろん、可能であればサーバー側のバージョン番号を含めるのが最善かもしれません。DOM の<link>構築中に正しいタグ (バージョン番号) が利用可能になるため、(1 つには) 起こりうる問題に対処できます。

于 2015-11-20T08:03:11.813 に答える