-1

我正在使用删除和替换 dom 中图像的 src

$('.myImg').attr('src',imgURL);

我正在尝试将其与加载事件一起使用。我预计只有在页面上尚未加载 imgURL 时才会触发 load 事件。

相反,有时会触发加载事件。我可以在 chrome 网络选项卡中看到图像何时以 304 Not Modified 状态返回。

我知道如何解决这个问题,但我只是好奇这是否正常。

我想表达这个问题的最佳方式是什么会导致浏览器再次尝试加载已经加载到页面上的图像?有一个缓存杀手,但是在我再次显示图像之前它没有被更新。

4

3 回答 3

0

304不是“永远不要再加载这个!”的某种诫命。这只是对客户端缓存系统的建议,不需要重新加载。基于它的内部算法,自然会在不同的实现中有所不同,它可能会选择加载资源。

于 2012-12-19T16:05:55.860 回答
0

尝试使用

$(window).load(function () {
  // run code
});

只有在加载 dom 树和图形时才会触发该函数。

于 2012-12-19T16:08:50.667 回答
0

问题最终是我在我的开发人员工具中检查了“禁用缓存”:-)

于 2013-02-24T16:46:55.500 回答