我建议只加载两张图片,然后只显示你想要的一张。这一切都可以通过 CSS 来完成。
给一个图像一类“动画”和另一类“非动画”。添加此 CSS 以处理悬停更改:
.singleSidebar .subnav img.animated,
.singleSidebar .subnav img.nonanimated:hover
{
display: none;
}
.singleSidebar .subnav img.animated:hover,
.singleSidebar .subnav img.nonanimated
{
display: block
}
这会更好,因为浏览器会立即加载图像,而不是当您将鼠标悬停时,它也更清洁 IMO
编辑啊,如果您需要他们在悬停时开始播放,那么您需要按照自己的方式进行。尝试这样的事情:
$('.singleSidebar .subnav img').each(function(e){
var src = $(this).attr('src');
$(this).hover(function(){
$(this).attr('src', src.replace('.gif', '_anim.gif'));
}, function(){
$(this).attr('src', src);
});
});
</p>