会延迟1秒是因为定时器是1秒执行一次。按照下面试试。
            //清除事件
            CountDown();//在设置定时前先执行一次
            var stopCountDown = setInterval(CountDown, 1000);

解决方案 »

  1.   


    好像没反应啊调用两次试试,看到你代码是在算好时间后才--的。 如果先--再算时间展现到页面那么即时调用一次就行了
    调用两次就是直接减一秒了 但你多按几次space试试 哈哈 神奇啊
      

  2.   

    //执行倒计时
            function OnTimer(id, time) {
                var remainingTime = time / 1000;
                var hour = 0;
                var minute = 0;
                var second = 0;
                //清除事件
                CountDown();            var stopCountDown = setInterval(CountDown, 1000);
                function CountDown() {
                    if (remainingTime >= 0) {
                     --remainingTime;
                        hour = Math.floor(remainingTime / 3600);
                        minute = Math.floor(Math.floor(remainingTime % 3600) / 60);
                        second = Math.floor(remainingTime % 60);
                        //转换格式,显示倒计时
                        var tominute = minute < 10 ? ("0" + minute) : minute;
                        var tosecond = second < 10 ? ("0" + second) : second;
                        var formatTime = tominute + ":" + tosecond;                    $(id).html(formatTime);
                        
                    } else {
                        //清除事件,字体变色
                        clearInterval(stopCountDown);
                        $("#time").css("color", "red")
                    }
                }
            }
    先调用一次 把--remainingTime;放在最开始的位置
      

  3.   


    怎么解决多按几次space的bug啊
      

  4.   


    var able = true;//定义一个是否可以按键的变量
            $(document).ready(function () {
                FooterControl();
                $(document).keyup(function (event) {
                    if (event.keyCode == 32) {
                     if(able){
                     var varMinute = $("#hiddlen_minute").val();
                     able = false;//阻止第二次按键
                         OnTimer("#time", 60 * varMinute * 1000);
                     }
                        
                    }
                })
            });
    //清除事件,字体变色
                        clearInterval(stopCountDown);
                        $("#time").css("color", "red")
                        able = true//成功之后恢复可以按键了
      

  5.   


    var able = true;//定义一个是否可以按键的变量
            $(document).ready(function () {
                FooterControl();
                $(document).keyup(function (event) {
                    if (event.keyCode == 32) {
                     if(able){
                     var varMinute = $("#hiddlen_minute").val();
                     able = false;//阻止第二次按键
                         OnTimer("#time", 60 * varMinute * 1000);
                     }
                        
                    }
                })
            });
    //清除事件,字体变色
                        clearInterval(stopCountDown);
                        $("#time").css("color", "red")
                        able = true//成功之后恢复可以按键了点击delete建怎么结束当前定时器啊。重置初始的