-1

サイト用の簡単なスライドを作成したい。ここでは、 slideShow関数を無限に呼び出そうとしています。ただし、関数はアニメーション関数が終了するポイントまで機能します。しかし、CSS プロパティを再度設定しようとしても機能しません。また、反復が機能していません。私が間違いを犯している場所を指摘してください。前もって感謝します。

$(document).ready(function () {
    function slideShow() {
        $('#image1').delay(2000).animate({
            opacity: 0
        }, 5000);

        $('#image2').delay(2000).animate({
            opacity: 1
        }, 5000);

        //After this point nothing seems to be working.
        $("#image1").css("opacity", "1");
        $("#image2").css("opacity", "0");
        slideShow();
    };

    slideShow();
};
4

2 に答える 2

0

animate() が 5 秒間完了する前に、image の CSS プロパティを変更しています。

関数を再度呼び出しますが、5 秒後に呼び出します。これは完全に機能します:

$(document).ready(function () {
    function slideShow() {
        $('#image1').animate({opacity: 0,}, 5000);
        $('#image2').animate({ opacity: 1}, 5000);
    setTimeout(function(){
        $("#image1").animate({opacity: 1,},5000);
        $("#image2").animate({opacity: 0,},5000);
        slideShow(); // call it recursively but after 5 seconds
        }, 5000);      
    };
    slideShow();
});

ありがとう。:)

于 2013-04-29T08:15:32.873 に答える