Мне нужно изменить скорость элемента, анимированного с помощью jQuery animate(). Скорость должна изменяться только тогда, когда пользователь наводится на определенный элемент. Вот что я до сих пор, но, похоже, ничего не делает.
var speed = 2000;
$('li').hover(
function(){
var speed = 500;
}
);
$(function () {
function drive() {
$( ".plane" ).animate({
"left": "+=50",
}, speed, drive);
}
drive();
});
Вам нужно изменить глобальную переменную скорость, а не просто настроить другую локальную переменную в обратном вызове hover'functions. Также обратите внимание, что наведение будет выполняться два раза для зависания, а другое - для зависания.
var speed = 2000;
$('li').hover(function(){
speed += 500;
});
$(function () {
function drive() {
$( ".plane" ).animate({
"left": "+=50",
}, speed, drive);
}
drive();
});