闪烁文本这么多秒 - 然后消失

时间:2012-06-11 00:00:53

标签: javascript jquery jquery-ui

我正在尝试淡入/淡出文本然后经过这么长时间停止该功能。在大多数情况下,当用户上线时,应该说用户在线,然后在一段时间后消失。现在它只是继续 - 没有停止点。如何添加一个点以使fadein / out功能停止?

function newUser(){
    $j('#new').text(content);
    $('#new').fadeIn('slow', function() {
        setTimeout("$('#new').fadeOut('slow');", 2000);
    });
}

调用此函数将淡入和淡出#new的内容,但它没有停止点。如何为此功能添加停止时间?

我试过这个看看它是否会起作用 - 但它只运行一次?我在脚本开头的x为0。

while(x < 4){
    $j('#new').fadeIn("slow", function() { 
     $j(this).delay(500).fadeOut("slow"); 
    });
    x++;
}

2 个答案:

答案 0 :(得分:4)

这样的事情怎么样?

function do_blink(elm, i){
  if(i<=0){return;}
  elm.fadeIn("slow", function(){
    $(this).delay(500).fadeOut("slow");
    do_blink(elm, --i);
  });
}

你可以这样称呼它

do_blink($("#new"),5);

答案 1 :(得分:1)

您可以尝试:

$('#new').fadeIn("slow", function() { 
      $(this).delay(500).fadeOut("slow").delay(500).fadeIn("slow").delay(500).fadeOut("slow"); 
});

在您的代码中,它将如下所示:

function newUser(){
    $j('#new').text(content);
    $('#new').fadeIn("slow", function() { 
         $(this).delay(500).fadeOut("slow").delay(500).fadeIn("slow").delay(500).fadeOut("slow"); 
    });
}

<强> EDITED