Javascript闪烁背景颜色:何时停止闪烁,何时开始闪烁



我已经找到了使用下面的代码,我们可以闪烁我的html页面的背景:

<script type="text/javascript"> 
setInterval("Timer()", 500);
var x=1;
var set;
function Timer() 
{
    set=1;
    if(x==0 && set==1) {
        document.bgColor='#00008B';
        x=1;
        set=0;
    }
    if(x==1 && set==1) {
        document.bgColor='#FFFFFF';
        x=0;
        set=0;
    }
}
</script>

html页面将永远闪烁只用这个代码。但我们如何停止眨眼,重新开始眨眼呢?

我想在页面收到协议命令时开始闪烁,当用户按下页面上的按钮时停止闪烁。我们该怎么做呢?

setInterval返回一个可用于禁用定时器的ID。阅读MDN上的文档https://developer.mozilla.org/en/docs/DOM/window.setInterval

<script type="text/javascript"> 
var x=1;
var set;
function Timer() 
{
    set=1;
    if(x==0 && set==1) {
        document.bgColor='#00008B';
        x=1;
        set=0;
    }
    if(x==1 && set==1) {
        document.bgColor='#FFFFFF';
        x=0;
        set=0;
    }
}
var timerInterval = null;
startBlinking = function() {
   if(timerInterval === null)
       timerInterval = setInterval(Timer, 500);
}
stopBlinking = function() {
    if(timerInterval !== null) {
        clearInterval(timerInterval)
        timerInterval = null
    }
}
</script>

调用startblink开始闪烁,stopblink停止闪烁。实际操作http://jsfiddle.net/8D3KW/

使用此http://jsfiddle.net/9FUWu/你需要使用clearIntervalonclick

将间隔保存在变量中:

var interval = setInterval("Timer()", 500);

你可以稍后使用这个变量来清除它:

clearInterval(interval);

setInterval分配给var,然后在其上执行clearInterval

var timer = setInterval("Timer()", 500);
...
clearInterval(timer);

最新更新