jQuery状态消息(类似于Twitter)

时间:2012-03-21 21:46:26

标签: javascript jquery jquery-ui animation

我正在创建一个状态消息栏,其中包含以下属性:

  • 滑入视图。一段时间后消失。
  • 如果触发了其他状态消息,则当前可见状态消息将滑出视图,然后新视图将滑入视图。

我遇到的问题是逐渐消失。淡出动作似乎没有出列,因此先前的淡入淡出将适用于随后的状态消息。知道如何解决这个问题吗?

function status_message(message, type, long_display) {
    if (!type) {
        type = SUCCESS;
    }
    var $status_message = $("#status_message");
    long_display ? display_time = 9000 : display_time = 3250;
    if ($status_message.is(":visible")) {
        $status_message.queue("fx", []).animate({top:-$(this).outerHeight()}, 500, "easeInCubic");
    }
    $status_message.show().queue(function() {
        $(this).html(message).css({'top': -$(this).outerHeight()}).addClass(type).dequeue();
    }).animate({top:"0px"}, 750, easing).delay(display_time).fadeOut(500, function () {
        $(this).animate({top:-$(this).outerHeight()}, 500, "easeInCubic").addClass(type);
    });
}
function status_message_hide() {
    $status_message.queue("fx", []).fadeOut(500, function () {
        $(this).animate({top:-$(this).outerHeight()}, 500, "easeInCubic");
    });
}

1 个答案:

答案 0 :(得分:0)

如果我理解正确的话,

.stop()应该这样做

http://api.jquery.com/stop/