如何使用jquery工具的叠加来延迟.trigger('click')

时间:2010-12-10 23:18:50

标签: jquery ajax overlay

我正在使用Jquery工具,覆盖效果并希望关闭它,如果JSON响应没问题,但我想延迟做。

  $.ajax({
                //bla bla
                success: function(data){
                        var obj = jQuery.parseJSON(data);
                        if (obj.status=='OK')
                        {
                            $('#status').text('bla bla');
                            jQuery('.close').trigger('click');
                        }
                        else
                        {
                            $('#status').text('bla bla');                       
                        }
                    }
            }); 

所以这个 - jQuery('。close')。触发器('click');必须在一段时间后执行。有什么想法吗?

3 个答案:

答案 0 :(得分:24)

setTimeout()是为此目的而设计的本机JavaScript函数。

setTimeout(function () {
   jQuery('.close').trigger('click');
}, 1000);

最后一个数字是延迟时间,以毫秒为单位。

答案 1 :(得分:6)

使用setTimeout:

这里的延迟是1秒(1000毫秒)

$.ajax({
                //bla bla
                success: function(data){
                        var obj = jQuery.parseJSON(data);
                        if (obj.status =='OK')
                    {
                        $('#status').text('bla bla');
                        setTimeout(function(){jQuery('.close').trigger('click');},1000);

                    }
                    else
                    {
                        $('#status').text('bla bla');                       
                    }
                }
        }); 

答案 2 :(得分:-4)

未经测试。

jQuery('.close').delay(500).trigger('click');