0

無限にループするJavascriptを作成しようとしています。

function scroll(num) {
    $("." + num + "").fadeOut('slow');
    var choose = num + 1;
    $("." + choose + "").fadeIn('slow');
    setTimeout(function() {
        scroll(choose);
    }, 1000);
}

setTimeout(function() {
    scroll('1');
}, 1000);​

初めて機能しますが、続行しません。

助けてください!

4

3 に答える 3

3

1つを文字列と整数の両方として使用しています。呼び出しとは、期待どおりではなく、を返すscroll('1')ことを意味します。代わりにこれを試してください: num + 1"11"2

function scroll(num) {
    $("." + num.toString()).fadeOut('slow');
    var choose = num + 1;
    $("." + choose.toString()).fadeIn('slow');
    setTimeout(function() {
        scroll(choose);
    }, 1000);
}

setTimeout(function() {
    scroll(1);
}, 1000);​
于 2012-06-15T00:53:19.540 に答える
0

文字列「1」に1を追加すると、「11」になります。これはあなたがやろうとしていたことですか?

于 2012-06-15T00:53:29.057 に答える
0

ここで問題は連結にあります。+を使用して連結することはコード内であいまいです。コードでvarchoose= num + 1; 予想どおり、2ではなく11を文字列として返します。

于 2015-05-11T10:46:54.910 に答える