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);
        });
    });
});
4

1 に答える 1

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];
于 2012-05-12T23:44:41.813 に答える