3

jQuery で css クラスの削除を遅らせるにはどうすればよいですか?

これが私のコードです

$(this).addClass("uk-form-danger").delay(5000).removeClass("uk-form-danger");

上記のコードは何もしません。次のコードでクラスを追加できます

$(this).addClass("uk-form-danger");

そして、私はそれを削除することができます

$(this).removeClass("uk-form-danger");

しかし、クラスの削除を遅らせることはできません。

4

5 に答える 5

3

setTimeout を使用すると、簡単に実現できます。

var myItem = $(this);

myItem.addClass("uk-form-danger");
setTimeout( function(){ myItem.removeClass("uk-form-danger"); }, 5000 );
于 2015-06-02T01:21:05.340 に答える
3

jquery delay はアニメーションでのみ使用することを目的としています。この方法で removeClass を遅らせることはできません。代わりに setTimeout を使用してください。

var $el = $('#myId');
$el .addClass("uk-form-danger")
setTimeout(function(){
    $el .removeClass("uk-form-danger");
}, 5000);
于 2015-06-02T01:21:14.817 に答える
1

遅延の代わりに setTimeout を使用してみましたか?

var myObject = $(this);

myObject.addClass("uk-form-danger");

setTimeout(function()
{
    myObject.removeClass("uk-form-danger");
}, 5000);
于 2015-06-02T01:21:05.423 に答える
1

setTimeout を使用してこのようなことを試してください

var self = $(this);
self.addClass('uk-form-danger');
setTimeout(function () {
    self.removeClass('uk-form-danger');
}, 5000);
于 2015-06-02T01:21:35.787 に答える