2010-05-17 80 views
1

我知道在jQuery中可以调用javascript/jquery onload()/load()函数,例如图像(<img>)。Javascript/jQuery HasLoaded或相当于?

但是,如果在jQuery中,如果我使用.html(htmlString)在dom加载后插入图像,如何添加侦听器来处理图像onload事件?是否有一个属性,我可以查看各种图像,如果他们已经加载?

回答

2

附加你的HTML后,您可以在加载事件绑定到包含图片:

$("#foo").html(htmlString).find("img").one("load", function() { 
    ... 
}).each(function() { 

    // image has been cached, so load event won't fire unless we explicitly call it 
    if(this.complete) $(this).trigger("load"); 
}); 
+0

那岂不是更好地创建图像的complete财产然后直接绑定它,而不必做这种冗余选择? – James 2010-05-17 14:51:58

+0

请务必做'.one('load','而不是'.load('在这种情况下。@JP:是的,但是你不会回答这个问题.. – 2010-05-17 14:53:34

+1

@JP - 我的理解问题是他想要将'load'绑定到某些任意HTML字符串的图像@Nick - 干杯,在答案中更新了 – karim79 2010-05-17 14:54:18

1

检查图像(S)