私のAjaxフォームが送信された後、このコードを使用してテーブルに新しい行を動的に追加しています
var $var = $('table');
var newRow = "<tr><td> blah </td></tr>"
$var.find('tr:last-child').before(newRow)
今、私はその行の背景色を3秒間だけ明るい黄色にしてから、通常に戻したい
関数を使用して試すことができsetTimeout
ます:
var $newRow = $("<tr class='light'><td>blah<td></tr>");
$var.find('tr:last-child').before($newRow);
setTimeout(function(){
$('#table tr.light').removeClass('light')
}, 3000)
良いアイデアは(BGカラーをアニメーション化するためのjQuery UIなしで)することです:
td
CSS のデフォルトですべての要素にカスタム カラーを設定するtr
CSS のデフォルトですべての要素に黄色を設定するtr
を挿入 td
td
!CSS
table tr{
display:block;
background:yellow;
}
table td{
display:block;
background:#eee;
}
jQuery
var $var = $('table');
$('button').click(function(){
var newRow = $("<tr><td> NEW ROW! </td></tr>");
$var.find('tr:last-child').before(newRow);
newRow.find('td').hide().fadeTo(3000,1);
});
new
スタイルを持つクラスを追加し、と を使用delay
しqueue
て 3 秒間待機し、 で削除new
しremoveClass
ます。
JS
var $newRow = "<tr class='new'><td> blah<td></tr>";
$var.find('tr:last-child').before($newRow)
.delay(3000).queue(function(){
$('.new').removeClass('new');
});
CSS
.new {
background-color: yellow;
}
あなたがjQueryUIを使用していると言うように、組み込みの「ハイライト」効果を使用できます。ここでデモを見ることができますhttp://jqueryui.com/effect/