Как я могу остановить анимацию цикла jQuery? - PullRequest
1 голос
/ 24 сентября 2011

У меня есть изображение, которое постоянно вращается на 90 градусов вправо и влево, и я пытаюсь остановить его, но не могу понять, как.

Я пытался поместить функцию в Ifоператор, чтобы я мог позвонить function = false; или true, но это не работает.

Вот скрипка: http://jsfiddle.net/gpPcU/

Ответы [ 3 ]

2 голосов
/ 24 сентября 2011

Вы можете изменить функцию обратного вызова на false

$("img").rotate({angle:0, callback:function(){ false; }});
0 голосов
/ 24 сентября 2011

Это будет сделано: http://jsfiddle.net/gpPcU/3/

Я не уверен, что вы попробовали с утверждением If, которое вы упомянули, потому что этого нет в вашей скрипке, но вы, вероятно, на правильном пути. Вот основные изменения, которые я сделал:

rotate() обратный вызов в течение test():

    function(){
        if(!$('img').hasClass('stop')){
            rotation()
         }else{
             $('img').rotate({angle:0});
         }
    }

Событие нажатия кнопки:

$(".btn").click(function(){
    $("img").addClass('stop');
});
0 голосов
/ 24 сентября 2011

Вы можете использовать метод остановки JQuery (http://api.jquery.com/stop/)

Пример:

$('.img').stop(true, true)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...