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 回答