jQuery在一定时间后移除引导警报



我从一个例子中使用动态引导警报。见下文.

如何添加超时函数,使alert在X时间后自动关闭?

HTML:

<div id="alert_placeholder"></div>
JQUERY:

bootstrap_alert = function() {
    }
bootstrap_alert.warning = function(message) {
    $('#alert_placeholder').append('<div class="alert alert-block fade in"><button type="button" class="close" data-dismiss="alert">&times;</button><h4>Info!</h4>'+ message +'</div>');
}
bootstrap_alert.info = function(message) {
    $('#alert_placeholder').append('<div class="alert alert-block alert-info fade in"><button type="button" class="close" data-dismiss="alert">&times;</button><h4>Info!</h4>'+ message +'</div>');
}

创建一个删除第一个(也就是最老的)警报的函数:

function alertTimeout(wait){
    setTimeout(function(){
        $('#alert_placeholder').children('.alert:first-child').remove();
    }, wait);
}

[0]确保每次超时时只删除第一个警报。

然后在显示警报时调用该函数,参数为警报关闭所需的时间,以毫秒为单位:

bootstrap_alert.warning = function(message) {
    $('#alert_placeholder').append('<div class="alert alert-block fade in"><button type="button" class="close" data-dismiss="alert">&times;</button><h4>Info!</h4>'+ message +'</div>');
    alertTimeout(5000);
}

请查看此jsFiddle

试试这个

$(function () {
 setTimeout(function () {
            if ($(".alert").is(":visible")){
                 //you may add animate.css class for fancy fadeout
                $(".alert").fadeOut("fast");
            }
        }, 3000)
});

相关内容

  • 没有找到相关文章

最新更新