2

我需要在 8 秒后停止闪烁文本。除了能够在 8 秒后停止之外,一切都运行良好。我是新手,需要帮助...

这是我正在使用的代码,请提供建议或在此代码中添加我需要在 8 秒后停止的内容:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.1.min.js"></script>

<div id="msg"> <strong><font color="red">text example</font></strong></p> </div>

<script type="text/javascript" >
function blink(selector){
    $(selector).fadeOut('slow', function(){
        $(this).fadeIn('slow', function(){
            blink(this);
        });
    });
}

blink('#msg');
</script>

谢谢

4

3 回答 3

7

您可以尝试在代码中添加这样的内容:

var stopBlinking = false;
setTimeout(function() 
{
    stopBlinking = true;
}, 8000);

function blink(selector) {
    $(selector).fadeOut('slow', function() {
        $(this).fadeIn('slow', function() {
            if (!stopBlinking)
            {
                blink(this);
            }
            else
            {
                $(this).hide();
            }
        });
    });
}

这里的例子

于 2012-05-30T09:45:15.440 回答
1
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.1.min.js"></script>

<div id="msg"> <strong><font color="red">text example</font></strong></p> </div>

<script type="text/javascript" >
var timer = 0;

var timeSpan = setInterval(function(){
    timer++;
},1000);

function blink(selector)
{
    if(timer == 0)
        timeSpan;
    $(selector).fadeOut('slow', function(){
        $(this).fadeIn('slow', function(){
            if(timer < 8)
               blink(this);
                    else
                    {
                  clearInterval(timeSpan);
              $(this).hide();
                    }
        });
    });
}

blink('#msg');
</script>

试试这个

于 2012-05-30T08:27:09.620 回答
0
function blink(selector){

  // all blink happen with 8 seconds interval

  setTimeout(function() {

   $(selector).fadeOut('slow', function(){

        $(this).fadeIn('slow', function(){

            blink(this); // recursive function will call after fadeIn finish

        });
   });

  }, 8000); // set interval to 8 seconds
}
于 2012-05-30T08:26:57.797 回答