转换背景图像/ css在hover时更改?

我在另一个div中有一个拇指钉,当缩略图hover时,我希望父div淡入/过渡到缩略图的背景,然后在hover后淡出回原始图像。

到目前为止,我已将此背景更改为缩略图的背景,但没有转换。

$(document).ready(function() { var originalBG; var hoverBG; $(".alt-img").hover( function () { originalBG = $(this).parent().css('backgroundImage'); hoverBG = $(this).css('backgroundImage'); $(this).parent().css('backgroundImage',hoverBG); }, function () { $(this).parent().css('backgroundImage',originalBG); } ); }); 

没有用于淡入/淡出backgroundImage的“内置”解决方案,但您可以使用链接动画()

 .animate({opacity: 0.5}, 1000) 

例如。 或者使用.css()以及设置新的不透明度级别。

根据jAndy的建议,我能够想出这个:

 $(document).ready(function() { var originalBG; var hoverBG; $(".alt-img").hover( function () { originalBG = $(this).parent().css('background-image'); hoverBG = $(this).css('background-image'); //$(this).parent().css('background-image',hoverBG); $(this).parent().animate({opacity: 0.1}, 200, function () { $(this).css('background-image',hoverBG); $(this).animate({opacity: 1}, 200); } ); }, function () { //$(this).parent().css('background-image',originalBG); $(this).parent().animate({opacity: 0.1}, 200, function () { $(this).css('background-image',originalBG); $(this).animate({opacity: 1}, 200); } ); } ); }); 

它不是一个真正的交叉淡入淡出,因为它会淡化原始图像,然后淡化新图像。但是接近妥协。