2

遅延を追加しましたが、機能していません...

<div id="sum"></div>рублей​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​
$('#sum').html('3000').delay(3000).html('5000');

http://jsfiddle.net/Jv8g6/

遅延が機能しないのはなぜですか?

4

2 に答える 2

3

delay()はアニメーションキューにのみ影響し、html()はそのキューを使用しません。

ただし、queue()を呼び出しhtml()、そのコールバック関数から呼び出して、必要な効果を得ることができます。

$("#sum").html("3000").delay(3000).queue(function() {
    $(this).html("5000").dequeue();
});

更新されたフィドルはここにあります

于 2012-11-30T09:49:04.467 に答える
2

delay()アニメーションなど、キューに保存されているアクションに適用されます。html()はキューを使用しないため、上記のコードは期待どおりに動作しません。

キューに入れられていないアクションの場合は、setTimeout()実行を遅らせるためにを使用する必要があります。これを試して:

$('#sum').html('3000');
setTimeout(function() {
    $('#sum').html('5000');
}, 3000);
于 2012-11-30T09:48:26.787 に答える