3

在加载事件http://api.jquery.com/load-event/的 jQuery 文档中,它说 Can cease to fire for images that already live in the browser's cache。是否有更多信息可用,例如它会影响哪些浏览器,以及在什么情况下?

4

1 回答 1

10

我不确定哪些浏览器会受到影响,但很容易检查。

var img = new Image();
img.src = "foo.jpg";
if (img.complete || img.readyState === 4) {
    // image is cached
    doneCallback();
}
else {
    $(img).on('load',doneCallback);
}

更新

如果您更改代码,它将始终在所有浏览器中触发加载事件。

var img = new Image();
$(img).load(doneCallback);
img.src = "foo.jpg";
于 2012-05-01T20:39:12.990 回答