2012-05-12 120 views
0

我試圖找到一種方法來從此代碼中刪除math.random函數,但沒有成功。我需要用於幻燈片的代碼按給定字符串的順序顯示它們。當我刪除math.random出現第一張圖片(鏈接從HTML),並從字符串的圖片不會加載。有誰知道如何從這個代碼中刪除math.random嗎?刪除數學隨機

$(function() { 
var images = ["home_photo_welshboy.jpg","home_photo_jam343.jpg","home_photo_xdjio.jpg","home_photo_ccgd.jpg"]; 
$('<img>').attr({'src':'http://l.yimg.com/g/images/'+images[0],'id':'bg','alt':''}).appendTo('#bg-wrapper').parent().fadeIn(1000); 
    $('.change').click(function(e) { 
    e.preventDefault(); 
    var image = images[Math.floor(Math.random()*images.length)]; 
     $('#bg').parent().fadeOut(200, function() { 
      $('#bg').attr('src', 'http://l.yimg.com/g/images/'+image); 
       $(this).fadeIn(200); 
     }); 
    }); 
}); 

回答

3

保留一個計數器當前圖像:

$(function() { 
    // ... 
    var current_image = 0; 

    $('.change').click(function(e) { 
     // ... 
     var image = images[current_image++ % images.length]; 
     // ... 
    }); 
}); 

每次點擊current_image增加和「環繞」,因爲模量。

當然,你也可以把它更加明確:

current_image = (current_image + 1) % images.length; 
var image = images[current_image]; 
+0

有趣的解決方案,我喜歡。 – elclanrs

+0

Yeeaaah,'%'好多了。 –

+0

像魅力一樣工作,感謝一堆菲利克斯! – user841760