【发布时间】:2015-06-18 02:10:48
【问题描述】:
我有一个非常原始的滑块,使用淡入淡出、淡出淡出和一些控制项目符号。
https://jsfiddle.net/c2dsnr8v/1/
<div class="view">
<ul class="list">
<li class="frst">
<img src="http://www.guessthelogo.com/wp-content/uploads/2012/11/random-dice.gif" />
</li>
<li class="scnd">
<img src="https://avatars.yandex.net/get-music-content/a19fc9b4.a.1767585-1/200x200" />
</li>
<li class="thrd">
<img src="http://randomacts.channel4.com/images/fb_logo.gif" />
</li>
<li class="frth">
<img src="http://cs620120.vk.me/v620120530/93f0/k7U9HGQOBkw.jpg" />
</li>
</ul>
<div class="ctrl">
<div class="bullet one"></div>
<div class="bullet two"></div>
<div class="bullet three"></div>
<div class="bullet four"></div>
</div>
</div>
$(".list li:gt(0)").hide();
var int = setInterval(function(){
$('.list > :first-child')
.fadeOut()
.next()
.fadeIn()
.end()
.appendTo('.list');} ,3000);
$(".bullet").on("click", function(){
clearInterval(int);
$(".list li").fadeOut();
var $this = $(this);
if($this.hasClass("one")){
$(".list li.frst").fadeIn();
}else if($this.hasClass("two")){
$(".list li.scnd").fadeIn();
}else if($this.hasClass("three")){
$(".list li.thrd").fadeIn();
}else if($this.hasClass("four")){
$(".list li.frth").fadeIn();
}
})
我想出了如何让图片在点击项目符号(绿色方块)时出现,这里的 setInterval 函数已经足够清晰了。但是当我尝试将这些机制结合在一起时,我发现我只能通过单击清除 setInterval。所以一旦我使用了子弹,自动旋转就不再起作用了。
有什么方法可以使用此代码将两者结合在一起吗?比如我点击了一颗子弹,图片静止了5秒,然后以同样的速度继续旋转?
我尝试在每次单击项目符号后包含一个新的 setInterval,但失败了。
【问题讨论】:
标签: javascript jquery html slider setinterval