停止动画后更改css属性

时间:2013-08-27 17:48:54

标签: jquery css animation if-statement slide

我想在动画完成后更改文字颜色。

我试试这个:

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 个答案:

答案 0 :(得分: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/