изменить скорость animate (), пока она анимируется, и наводить курсор на элемент

0

Мне нужно изменить скорость элемента, анимированного с помощью jQuery animate(). Скорость должна изменяться только тогда, когда пользователь наводится на определенный элемент. Вот что я до сих пор, но, похоже, ничего не делает.

    var speed = 2000;

    $('li').hover(
    function(){
        var speed = 500;
    }
    );

    $(function () {
       function drive() {
         $( ".plane" ).animate({
            "left": "+=50",
          }, speed, drive);
        } 
      drive();
    });
Теги:
animation

1 ответ

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

Вам нужно изменить глобальную переменную скорость, а не просто настроить другую локальную переменную в обратном вызове hover'functions. Также обратите внимание, что наведение будет выполняться два раза для зависания, а другое - для зависания.

   var speed = 2000;

    $('li').hover(function(){
        speed += 500;
    });

    $(function () {
       function drive() {
         $( ".plane" ).animate({
            "left": "+=50",
          }, speed, drive);
        } 
      drive();
    });

Ещё вопросы

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