所以我已经为带有 .fadeIn() 回调的图像设置了这个 .load 设置,效果很好。问题是,如果我在同一张图像上连续两次触发 .load,它不会到达回调!
这是代码片段:
$('#thumbs a').click( function() {
imageSrc = $(this).attr('href').substring(1)+'.jpg'; // grab src, remove hash, add jpeg extension
$('#viewer img').fadeOut('fast', function() { // fade old image out fast, wait until finished before changing src
$('#viewer img').attr('src', (mediumPath+imageSrc)); // change src to new image
$('#viewer a').attr('href', imageSrc);
});
$('#viewer img').load(function(){ // once image is loaded, fade the img back in
$('#viewer img').fadeIn('slow');
});
return false;
});
您可以在我的网站(正在进行中)上试用。只需连续两次单击左侧的缩略图,loader.gif 就不会消失,即不会进入 .fadeIn()。
注意:我相信这只会影响 WebKit 浏览器(?)