2

WPFページにWebBrowserコントロールがあります。WebBrowserコントロールにロードされたHTMLページには、WPFアプリケーションの画像が表示されます。WPFページからHTMLページへのJavaScriptコールバックがあり、画像が変更されたことをページに通知し、画像を再読み込みします。タグの基になるファイルが変更されたことをブラウザに伝える方法が見つからないようです。

imgをリロードするにはどうすればよいですか?

src属性を変更してみましたが、次のようなものにも疲れました。

            $("#img1").attr("src", "");
            $("#img2").attr("src", "");

            $("#img1").attr("src", image1);
            $("#img2").attr("src", image2);

関数が最初に呼び出されたときに、画像が表示されます。画像を変更して関数を再度呼び出すと、元の画像が残ります。

4

2 に答える 2

6

ランダムクエリ部分でソースを新規に設定します。例:img.png?0001など

このトリックを使用すると、すべての呼び出しに新しいURLがあり、ブラウザーコントロールはキャッシュ処理で煩わしいことはありません。

于 2012-07-27T13:51:41.173 に答える
3

一意のクエリ文字列パラメータを渡すと、画像が強制的に再読み込みされます。多くのサイトとライブラリ()は、この手法を使用して、リソースの新しいコピーが表示されるようにします。

$("#img1").attr("src", image1 + '?_=' + new Date().getTime());
$("#img2").attr("src", image2 + '?_=' + new Date().getTime());

image1またはimage2リンクにすでにクエリ文字列が含まれている場合は、ロジックを追加する必要があります。

于 2012-07-27T13:54:45.773 に答える