var town_imgs = $('.town_img img');
var container;
var imggg
town_imgs.hover(function(){
container = $('<div class="town_img_thmb">'
+'<span class="thmb_container ajax2"></span>'
+'</div>').appendTo($(this).parents('.town_wrapper').find('.thmb_wrapper'));
var imggg = new Image(140,100);
imggg.onload = function(){
container.find('.thmb_container').append(this);
}
imggg.src = $(this).attr('src').replace(/\/t0\//,'/t1/');
},function(){
container.remove();
$(imggg).unbind('onload');
});
当我快速徘徊缩略图时不工作。它连续显示2-3张图像,大约250-500ms~
据我了解,因为我使用外部变量存储当前缩略图。
是吗?是否有正确取消onload事件的解决方案?
谢谢;)
答案 0 :(得分:5)
有两个问题,您要从中删除var
,因此您的参考是正确的:
var imggg = new Image(140,100);
然后通过清除您设置的onload
功能取消绑定:
imggg.onload = null;
答案 1 :(得分:1)
如果您想使用 onload
jQuery
事件
您可以使用 unbind
函数。
$('#myimage').unbind('click');
您可以从这里获得更多帮助:
Best way to remove an event handler in jQuery?