在jquery中完成前一行之后执行一行

San*_*mar 5 jquery

我是jQuery的新手,我正在尝试一个简单的程序.在这个程序中,我想要实现的是当我点击div文本然后第一行将淡出然后它将改变背景颜色然后它将淡入,所以整体它将产生缓慢改变颜色的效果,但这里发生了什么就是当我点击文本时,线条会突然改变颜色,然后它逐渐淡出然后它会淡入.所以我想知道是否有办法在执行淡出后执行换色代码.

我的节目:

        $(document).ready(function(){
            $("#firstDiv").click(function(){
                //                    $(this).fadeOut(1000);

                $(this).fadeOut(1000);

                $(this).css("background-color", "aqua");

                $(this).fadeIn(1000);


            });
        });
    </script>
</head>
<body>
    <div id="firstDiv" style="background-color: yellowgreen">
        Click Me
    </div>
</body>
Run Code Online (Sandbox Code Playgroud)

YNh*_*hat 3

您可以像这样使用 fadeOut() 的回调函数:

$(this).fadeOut(1000, function(){
    $(this).css("background-color", "aqua").fadeIn(1000);
});
Run Code Online (Sandbox Code Playgroud)