2013-03-29 19 views
0

这个工程,但我假设有一个更有效的方式来实现这一效果。 我的意图是重置最后一张幻灯片上的功能,使其循环。重置点击后递减的变量的正确方法是什么?

http://jsfiddle.net/andrewtamala/JVgAC/3/

$(document).ready(function(){ 

    var i = $(".slide").length; 

    $('.button').click(function() { 
     i--; 

     $('.slide').eq(i).animate({"top" : "500"}, 200) 
     .animate({"opacity" : "0", "top" : "000"}, 1) 
     .animate({"opacity" : "1"}); 

      if (i === -1) { 
       i++; 
       i++; 
       i++; 
       i++;    
      } 

    })  
}); 
+0

我+ = 4?这就是你需要的一切吗?或者只是我= 3? – djechlin

+1

已弃用?你的意思是减少了吗? – BoltClock

+0

是的。谢谢你的纠正。 – user2221628

回答

0

您可以创建另一个变量来保存原始长度:

var n = $(".slide").length, 
i = n; 

在你的函数的末尾:

if (i <= 0) { 
    i = n; 
} 
+0

谢谢。这正是我所期待的。在循环中,我遇到了第一张幻灯片重复出现的问题。你知道为什么发生这种情况吗? – user2221628

+0

@ user2221628也许只是改变条件:'if(i <= 0){...' –

+0

太棒了!非常感谢。 – user2221628

相关问题