cmsのページ順序を変更する簡単なスクリプトがあります。これは、jQueryを使用したテーブル行の並べ替えに基づいています。ここで問題となるのは、ハイライトクラスを行全体から遅らせて削除したいということです。delay()を無視し、すぐに削除します。
行にカーソルを合わせると、cell_rolloverクラスが追加されるという考え方です。上/下矢印をクリックすると、クラスはその行に残り、行が移動したことを示します。したがって、約200ミリ秒後、クラスが削除されます。そうではありません。
矢印のコード:
$(".listtable_up, .listtable_down").click(function() {
var row = $(this).parents("tr:first");
if ($(this).is(".listtable_up")) {
row.insertBefore(row.prev());
} else {
row.insertAfter(row.next());
}
row.delay("200").removeClass('cell_rollover');
});
注:cell_roverクラスは、jQueryスクリプトを使用して行に追加されています。
$(".listtable tbody td").hover(function () {
$(this).closest('tr').addClass('cell_rollover');
}, function () {
$(this).closest('tr').removeClass('cell_rollover');
});
なぜこれが発生し、どのように修正するのですか?
私の一般的なアイデアの編集 ソリューションは、jqueryエフェクトのハイライトの形式です。http://jsfiddle.net/sZdre/1/ しかし、それでも、遅延が正常に機能しない理由を理解しようとしています。