2013-08-27 6 views
1

Я хочу изменить цвет текста после завершения анимации.Изменение свойства css после анимации остановки

Я стараюсь это:

http://jsfiddle.net/WvAaK/2/

Но не работает! :/

var menuState="closed"; 
$("#MENU").click(function() { 
if (menuState=="closed") { 
$("#SOUSMENU").animate({height: "300px"}, 1000); 
menuState="open"; 
} else if (menuState=="open"){ 
$("#SOUSMENU").animate({height: "0px"}, 1000); 
menuState="closed";}}); 
$("#MENU").click(function() { 
if (menuState=="open") { 
    $("h1").css('color','red'); 
} else if (menuState=="closed"){ 
$("h1").css('color','black'); 
    menuState="closed"; } 
}); 

Спасибо за вашу драгоценную помощь!

ответ

1

Используйте дозвон .animate

var menuState="closed"; 
$("#MENU").click(function() { 
    if (menuState=="closed") { 
     $("#SOUSMENU").animate({height: "300px"}, 1000, function() { 
      $("h1").css('color','red');  
     }); 
     menuState="open"; 
    } else if (menuState=="open"){ 
     $("#SOUSMENU").animate({height: "0px"}, 1000, function() { 
      $("h1").css('color','black'); 
     }); 
     menuState="closed"; 
    } 
}); 

Демы: http://jsfiddle.net/WvAaK/3/

+0

@ user2657939 есть также немного отличается скрипка http://jsfiddle.net/WvAaK/4/ – vittore

Смежные вопросы