关于setInterval设置倒计时只执行一次,clearInterval停止

使用setInterval方法实现如图倒计时,但实际运行只运行了一遍

源代码如下:

var s = setInterval(time,1000);
var  n = 10;
function time(){
     //缴费按钮不可用倒计时
	if(num>0){
		num--;
                //修改按钮显示文本
	        $("#zhuce11").text("确认缴费("+n+")");
	} else {
		$("#zhuce11").text("确认缴费");
		//设置缴费按钮可用
		$("#zhuce11").attr('disabled',false);
		$("#zhuce11").css('background-color', '#f9313a');
		clearInterval(s);
	}    
}    

  网上搜的方法都是将setInterval("time()",1000)修改为setInterval(time,1000)

       但修改后并不管用

       于是我试着把两个方法写在一块,成功,代码如下:

var n = 10;
var s = setInterval(function(){
    //缴费按钮不可用倒计时
    if(n > 0){
        n--;
        $("#zhuce11").text("确认缴费("+n+")");
    } else {
        $("#zhuce11").text("确认缴费");
        //修改缴费按钮可用
        $("#zhuce11").attr('disabled',false);
        $("#zhuce11").css('background-color', '#f9313a');
        clearInterval(s);
    }
}, 1000);

 

posted @ 2019-05-10 15:52  程序小白灬  阅读(1972)  评论(0编辑  收藏  举报