我有一個我正在開發的ColdFusion應用程序,需要一個可以啓動,暫停和清除的計時器。我的問題是,儘管它在IE9,Firefox,Opera,Chrome和Safari中運行得很好,但它在IE8(這是我的用戶羣中的一大塊)中不起作用。問題是,當我點擊並嘗試停止計時器時,而不是計時器停止,它會加速。它只在IE8中(其他瀏覽器正常工作)。Javascript clearInterval加速計時器而不是暫停它
- HTML代碼 -
function check_timer() {
if($('#timer').hasClass('start')) {
$('#timer').val("Stop Timer");
timer = setInterval ("increaseCounter()", 1000);
$('#timer').removeClass('start')
}
else {
if(typeof timer != "undefined") {
clearInterval(timer);
}
$('#timer').val("Start Timer");
$('#timer').addClass('start')
}
}
function increaseCounter() {
var secVal;
var minVal;
secVal = parseInt($('#counterSec').html(),10)
minVal = parseInt($('#counterMin').html(),10)
if(secVal != 59) {
secVal = secVal + 1;
if(secVal < 10) {
secVal = secVal.toString();
secVal = "0" + secVal;
}
$('#counterSec').html(secVal);
}
else {
if(minVal != 59){
minVal = minVal + 1;
if(minVal < 10) {
minVal = minVal.toString();
minVal = "0" + minVal;
}
$('#counterMin').html(minVal);
}
else {
$('#counterHour').html((parseInt($('#counterHour').html(),10)+1));
$('#counterMin').html("00");
}
$('#counterSec').html("00");
}
}
- DIV含時鐘 -
<div class="supportClock" style="width:150px; border-radius:20px;" align="center">
<span id="addZeroHour"></span>
<span id="counterHour">00</span>
:<span id="addZeroMin"></span>
<span id="counterMin">00</span>
:<span id="addZeroSec"></span>
<span id="counterSec">00</span>
</div>
- 按鈕激活時鐘 -
<input type="button" id="timer" class="start" value="Start Timer" onclick="check_timer()">
1)即使你設置的時間間隔爲,例如,一秒鐘,這並不一定是一秒在通話之間。 2)對於超時和時間間隔,始終傳遞的功能,從來沒有一個字符串:'的setInterval(increaseCounter,1000)' – Shmiddty