实际上,在产品页面中,我们希望减少服务器的负担,以便在鼠标悬停后的2到3秒后才能显示图像。所以,如果用户悬停光标,我们应该在2秒钟后打开服务器,并带来新的图像。但下面的代码没有按照我们的预期工作。如何用延时翻转图像?
HTML标签:
<img class="rollover-images" data-rollover="{bringNewImage()}" src="{bringOldImage()}" />
的Javascript:
$('.rollover-images').each(function() {
var newSrc = $(this).data('rollover');
if(newSrc == 0) return;
var timeout, oldSrc;
$(this).hover(function() {
timeout = setTimeout(function() {
oldSrc = $(this).attr('src');
$(this).attr('src', newSrc).stop(true,true).hide().fadeIn(1);
}, 2000);
}, function() {
clearTimeout(timeout);
$(this).attr('src', oldSrc).stop(true,true).hide().fadeIn(1);
});
});
*发生了什么? – Alex
问题有问题吗?为什么它是-1? –