анимацию повторить после того, как это сделано?

0

Эта анимация запускается, когда после загрузки страницы. После завершения анимации, как я могу повторить ее снова и снова? Спасибо за любую помощь!

function cloudRight(){
$(window).on('load', function () {
    $( ".cloudRight" ).animate({
        left: "+=1000px",
    }, 30000, "swing", 
    function() {
        $( ".cloudRight" ).animate({
            left: "-=1000px",
        }, 30000, "linear");
    }); 
  }); 
}

$(document).ready(function(){
    cloudRight();
});
  • 0
    вы можете позвонить $ (cloudRight); после функции вместо загрузки окна
Теги:
repeat
animation
onload

3 ответа

3
Лучший ответ

Вы можете использовать:

function cloudRight() {
    $(".cloudRight").animate({
        left: "+=1000px",
    }, 30000, "swing",

    function () {
        $(this).animate({
            left: "-=1000px",
        }, 30000, "linear", cloudRight); // call it again on animation complete
    });
}

$(cloudRight); // call on document ready

Если в классе cloudRight имеется более одного элемента, cloudRight этого вы должны использовать обещание, чтобы напомнить его только один раз каждый раз:

function cloudRight() {
    $(".cloudRight").animate({
        left: "+=1000px",
    }, 30000, "swing",

    function () {
        $(this).animate({
            left: "-=1000px",
        }, 30000, "linear");
    }).promise().done(cloudRight);
}

--DEMO--

  • 0
    Спасибо! Это работает как шарм!
1

Попробуйте ниже код

function cloudRight(){

    $( ".cloudRight" ).animate({
        left: "+=1000px",
    }, 30000, "swing", 
    function() {
        $( ".cloudRight" ).animate({
            left: "-=1000px",
        }, 30000, "linear",cloudRight);
    }); 

}

$(document).ready(function(){
    cloudRight();
});
1
        function cloudRight(){
            $( ".cloudRight" ).animate({
                left: "+=30px",
            }, 300, "swing", 
            function() {
                $( ".cloudRight" ).animate({
                    left: "-=30px",
                 }, 300, "linear");
                 cloudRight();
            });
        }

        $(document).ready(function(){
            $(window).on('load', function () {
                cloudRight();
            });
        });

Ещё вопросы

Сообщество Overcoder
Наверх
Меню