2014-04-28 85 views
0

我有一個變量,我循環通過一個按鈕單擊7個div。一旦我到達最後一個div,我想更改按鈕的點擊處理程序。檢查是否最後div和更改點擊處理程序jQuery

我的問題是找到最後一個div。我知道有這樣做的方法,div.last();等等。但我的問題是,每當我找到這種方式,並檢查與if語句。我的更改不起作用。

我有兩個功能:

function Progress() { 
    //Cycle through divs 
    $('#next').on('click', function() { 
    i = (i + 1) % divs.length; 
    divs.fadeOut().eq(i).fadeIn().addClass('transition-in'); 
} 
} 

function SendForm() { 
    //Send the form 
} 

這成功地循環通過,但繼續一旦到達終點。我正在考慮沿着這樣的方向行事:

if(lastDiv) { 
    SendForm(); 
} 

else { 
Progress(); 
} 

當然,我嘗試過,並沒有奏效。任何幫助表示讚賞。

回答

0

事情是這樣的..

function Progress() { 
    //Cycle through divs 
    $('#next').on('click', function() { 
    i = (i + 1) % divs.length; 
    if(i == divs.length){ 
     sendForm(); 
    }else{ 
     divs.fadeOut().eq(i).fadeIn().addClass('transition-in'); 
    } 
    } 
} 
+0

什麼都沒有發生我這樣做的時候。你認爲這與divs.length的值是7有什麼關係,我從0增加? – hannahharkness

+0

也許..這只是一個普遍的想法。這是未經測試 –

+0

是的,我測試了它,這是問題。我現在用不同的方法解決了這個問題,謝謝你的幫助。 – hannahharkness

相關問題