clearInterval无法清楚setInterval了?!

html<input type="text" id="time">
<button id="btn">确定</button>
<p id="counter"></p>
javascript    window.onload = function() {
        var btn = document.getElementById('btn');
        btn.onclick = getTime;
        function getTime() {
            function count(sec, cur) {
                var dif = (sec - cur) / 1000;
                var day = Math.floor(dif/3600/24);
                var s1 = dif % (3600 * 24);
                var hour = Math.floor(s1 / 3600);
                var s2 = s1 % 3600;
                var minute = Math.floor(s2 / 60);
                var s3 = s2 % 60;
                var second = Math.floor(s3);
                document.getElementById('counter').innerHTML = '距离' + str + ' 00:00:00' + '还有' + day + '天' + hour + '小时' + minute + '分钟' + second + '秒';
            }
            window.clearInterval(intId);
            var str = document.getElementById('time').value;
            var cur = Date.parse(new Date());
            var sec = Date.parse(str+' 00:00:00');
            count(sec, cur);
            var intId = window.setInterval(function () {
                sec -= 1000;
                count(sec, cur);
            }, 1000);

        }
    };

不明白为什么setInterval返回值,在getTime的作用域下,有时为空?!

阅读 2.8k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题