Javascript 通过jQuery检测图像加载

Javascript 通过jQuery检测图像加载,javascript,jquery,html,css,image,Javascript,Jquery,Html,Css,Image,我在上更改此图像的src。单击事件 更改src后,可以加载20多个不同的图像 1) 我怎么知道,是图像已经加载(应该缓存)还是必须加载 2) 如何运行两个不同的函数,用于加载和不加载 谢谢。您需要为加载事件附加一个事件处理程序: 2017年更新: <img src="http://site.com/image.png" /> 普通JS/DOM: $('img').on('load', function() { alert('new image loaded: ' + thi

我在
上更改此图像的src。单击
事件

更改
src
后,可以加载20多个不同的图像

1) 我怎么知道,是图像已经加载(应该缓存)还是必须加载

2) 如何运行两个不同的函数,用于加载和不加载


谢谢。

您需要为
加载事件附加一个事件处理程序:

2017年更新

<img src="http://site.com/image.png" />
普通JS/DOM:

$('img').on('load', function() {
    alert('new image loaded: ' + this.src);
});

如何为已加载和未加载运行两个不同的函数?@Happy:无论图像是从服务器还是浏览器缓存加载的,都会触发此事件。我不知道这两者之间有什么区别。请注意,从jQuery 1.7开始,.on()比.bind()更受欢迎。其余的代码都是一样的:)这个答案可能真的需要更新
bind()
已经被取代和弃用了一段时间。另请参见此问题:的可能重复
imgNode.onload = () => {
    alert('new image loaded: ' + this.src);
};