在 SO 的帮助下,我有一些 javascript/jquery 可以循环浏览一些徽标,使它们淡入淡出。我一直在尝试修改它以同时淡化两个并排的徽标。
你可以在这里看到我的代码的 jsfiddle 版本:http: //jsfiddle.net/BvLb4/3/
如您所见,我认为为左右徽标创建不同的类将是并排放置两个徽标的好方法。所以我的 html 现在看起来像这样:
<div id="img0" class="logo">
<img src="http://i.imgur.com/JeBWX.jpg"/>
</div>
<div id="img1" class="logo2">
<img src="http://i.imgur.com/DyyY3.jpg"/>
</div>
<div id="img2" class="logo">
<img src="http://i.imgur.com/aVDZ1.jpg"/>
</div>
<div id="img3" class="logo2">
<img src="http://i.imgur.com/JxLQt.jpg"/>
</div>
我在更改递归循环时遇到了麻烦,因为我有一个徽标一次可以使用两个:
$(document).ready(function (){
var fadeDuration = 1000;
var timeBetweenFade = 3000;
var totalLogos = $('.logo').length + $('.logo2').length;
var currentLogo;
var idx = 0;
var loop = function(idx, totalLogos) {
var currentLogo = "#img" + idx;
$(currentLogo)
.delay(100)
.fadeIn(fadeDuration)
.delay(timeBetweenFade)
.fadeOut(fadeDuration, function(){
loop( (idx + 1) % totalLogos, totalLogos);
});
}
loop(0, totalLogos);
});
我最初的想法是创建一个额外的var currentLogo2 = "#img" + (idx+1);
,将所有相同的方法应用于它以及 currentLogo,然后将 idx 增加 2。这在我的脑海中是有道理的,但到目前为止我尝试实现它并没有成功,而且我通常不会确定这是否是最好的方法,因为代码有点重复。您会建议什么解决方案来解决一次淡入淡出两个(或更多)的徽标循环?