1

jQueryを使用してHTML要素のCSS属性を遅延させて変更するにはどうすればよいですか。

このシナリオを想像してみてください。私はブルーをdiv持っています。フェードアウトして、フェードインしたら赤くしbg colorたいです。bg color

これを試しました。

$("div").fadeOut().delay(500).css("background-color","red").fadeIn();

フェードアウトしている間、div はフェードインする前にすでに色を赤に変更しています。チェーンされたイベントのシーケンスには従いません。これを1行で実現するにはどうすればよいですか。

4

2 に答える 2

4

function を使用して、任意の関数をアニメーション キューに参加させることができqueueます

$("div")
    .fadeOut()
    .delay(500)
    .queue(function() {
        $(this).css("background-color","red").dequeue();
    })
    .fadeIn();

コールバック内の呼び出しに注意してくださいdequeue。これは、キュー内の次のものを続行するよう jQuery に指示するものです。

于 2013-08-26T07:27:32.813 に答える
2
$("div").fadeOut(500, function() {
    $("div").css("background-color","red").fadeIn()
});
于 2013-08-26T07:26:05.907 に答える