删除数学随机

时间:2012-05-12 23:38:51

标签: jquery slideshow

我试图找到一种方法从这段代码中删除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);
        });
    });
});

1 个答案:

答案 0 :(得分: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];