2012-09-26 20 views
0

有一些幫助我已經創建了一個使用jQuery和CSS3的旋轉滑塊,除了一件事情之外,它似乎工作得很好......第一個「幻燈片」似乎有兩倍延遲第一次玩遊戲。任何人都可以闡明爲什麼會發生這種情況?任何幫助將不勝感激......JavaScript/jquery旋轉滑塊 - 雙延遲問題

var i = 0; 
var z = 0; 
delay = 5000; 

var el = $('#scroll-script'); 
var ql = $('#info-box'); 

var classesb = ['fp-info-one', 'fp-info-two', 'fp-info-three', 'fp-info-four'];  
var classes = ['fp-slide-one', 'fp-slide-two', 'fp-slide-three', 'fp-slide-four']; 

var interval = setInterval(function() { 

    el.removeClass().addClass(classes[i]); 
    i = (i + 1) % 4; 

    ql.removeClass().addClass(classesb[z]); 
    z = (z + 1) % 4; 

}, delay); 

回答

1

您的匿名功能,setInterval的裏面的一個,等待時間(你的延遲)最初運行相同的金額。您可以:

1)改變匿名函數到一個名爲功能,並執行您的間隔

2)運行的setInterval方法之前,這些行之前運行一次。只是模仿匿名函數中的代碼一次。

el.addClass(classes[3]); 
    ql.addClass(classesb[3]); 

你可以看看這個小提琴裏面,看看我提供的一些解決方案。

http://jsfiddle.net/G7NdU/4/

+0

謝謝!我永遠不會想到這一點,非常感謝! – user1615837