0

現在、私のページには次のメタ タグが含まれています<head>

<meta name="application-name" content="MLP Now" />
<meta name="msapplication-starturl" content="./" />
<meta name="msapplication-navbutton-color" content="#C693FB"/>
<meta name="msapplication-tooltip" content="MLP Now" />

これは問題なく機能し、ブラウザはボタンの色を設定値に合わせて喜んで更新します。しかし、ここに問題があります。これは、ページがリロードされたときにのみ発生します。

ボタンの色が変更されているのを見るためだけにユーザーにリロードを強制したくないので、ページをリロードせずにこれを行う方法があるかどうか興味がありました.

JavaScript で meta タグの値を変更しようとしましたが、ご想像のとおり、うまくいきません。

var newcolor = "#123456";
$('meta[name="msapplication-navbutton-color"]').attr('content',newcolor);

編集:明確にするために、メタ タグ更新されますが、IE ではボタンの色だけが変わりません。

4

1 に答える 1

1
  • メタタグを削除して追加してみてください
  • すべてのページを再描画してみてください。経由でhtml要素の再描画CSSスタイルを追加しますdisplay: inline-block
  • 非常に悪い方法ですが...試してみてくださいdocument.documentElement.innerHTML = document.documentElement.innerHTML

お役に立てば幸いです。

新しい

ドキュメントを読んで、役に立ちました。msapplication-navbutton-colorは実行時パラメーターです。つまり、ページの読み込みが開始されたときにスタイルが一度だけ適用されることを意味します...したがって、色を変更することはできません。ページの読み込み後、ランタイム スタイル (domNode.runtimeStyle) やメタデータを変更すると、msapplication-navbutton-color再描画動作がトリガーされません。

于 2013-11-15T13:16:47.367 に答える