我有一个脚本:

http://jsfiddle.net/bXJhe/7/

jQuery(document).ready(function() {

    timer(10)

});

// Timer
var GLOBAL_TIMER;

function timer(intCount) {
    GLOBAL_TIMER = setInterval(function() {

        var intTickLength = 10;

        if (intCount < 10) {
            jQuery('#timer').html('00:0' + intCount--);
            jQuery('#bar').css('width', intCount * intTickLength + 'px');
        } else {
            jQuery('#timer').html('00:' + intCount--);
            jQuery('#bar').css('width', intCount * intTickLength + 'px');
        }

        if (intCount < 0) {
          stopTimer();
        }

    }, 1000);
}

function stopTimer() {
    clearInterval(GLOBAL_TIMER);
}​


我正在根据intCount * intTickLength设置进度条的宽度(也许有更好的方法?)

问题是,当计数器达到1时,条上的最后一个刻度消失。我需要一直保持到计数器达到0。我需要某种偏移量。.有什么想法吗?我不是js专家,但我很想成为一名。

最佳答案

在减少计数器之前,设置条形大小:

jQuery('#bar').css('width', intCount * intTickLength + 'px');
jQuery('#timer').html('00:0' + intCount--);

10-04 21:29