jquery图像加载奇怪的行为

jquery图像加载奇怪的行为,jquery,html,image,Jquery,Html,Image,我有一个页面有一个带有html的img支架:- <img src="someimage.jpeg" alt="image" class="show_image"/> 现在,当图像加载后,我想运行一些代码 作为图像缩放并让用户知道图像已加载 我运行此代码以知道图像已加载 var inc = 0; $('.show_image').load(function() { inc++; console.log('image loaded '+inc)

我有一个页面有一个带有html的img支架:-

<img src="someimage.jpeg" alt="image" class="show_image"/>
现在,当图像加载后,我想运行一些代码

作为图像缩放并让用户知道图像已加载

我运行此代码以知道图像已加载

 var inc = 0;
    $('.show_image').load(function() {
        inc++;
        console.log('image loaded '+inc);
    });
现在,在反复更新img src时,上面的加载函数显示了一个奇怪的错误

行为和正在调用img src的更新次数

查看本页的firebig日志…(使用上面的prev n next按钮)

pradyut.dyndns.org/original_image.jsp#imgid=202

我想我必须像这样运行代码

if(inc==1) {
  //run code
}
有什么帮助吗


谢谢

仅在图像上绑定一次加载事件,而不是每次加载新图像时

或者,在绑定新的加载事件之前,使用
unbind
方法解除任何先前加载事件的绑定。

使用:


这将在处理程序第一次运行后删除处理程序。

您希望
加载
事件中的函数只触发一次,对吗?是(stackoverflow不允许更少的字符:D),但我想知道是否每次加载新图像时都加载了图像…或者我无法理解您的意思。。请输入一些代码。如果只绑定一次,则每次加载新映像时都会调用事件处理程序。更改
src
属性时,不会删除事件处理程序,它仍然保留。您以前实际使用过
bind
方法,只是没有直接使用。当函数使用
load
方法时,它实际上与
.bind('load',func)
相同。您可以使用
.unbind('load')
解除绑定该特定事件,或者简单地使用
.unbind()
解除绑定所有事件。很好的一个…(stackoverflow不允许更少的字符:D)
if(inc==1) {
  //run code
}
$('.show_image').one('load', function() {
    inc++;
    console.log('image loaded '+inc);
});