0
嗨我是新的JS和jQuery,我有一个简单的倒数计时器的问题。jquery倒计时定时器NaN
当我输入一些值到输入它翻译成NaN(而不是数字)在我的倒数计时器。
这里是我的代码:
$(function() {
var $input = $('#time'),
seconds = parseInt($input.val()),
$start = $('button');
$start.on('click', function() {
var interval = setInterval(function() {
switch (seconds) {
case 0:
clearInterval(interval);
console.log("Time's UP!");
break;
case 1:
console.log("Do końca pozostała " + seconds + " sekunda"); /*polish gramaticall variation*/
break;
case 4:
case 3:
case 2:
console.log("Do końca pozostało " + seconds + " sekundy"); /*polish gramaticall variation*/
break;
default:
console.log("Do końca pozostało " + seconds + " sekund"); /*polish gramaticall variation*/
}
seconds = seconds - 1;
}, 1000);
});
});
HTML:
<label for="time">Set time in seconds </label>
<input type="text" id="time">
<button>Start</button>
'秒= parseInt函数($ input.val())'的秒值将是设置的值在页面加载时,它在任何情况下都不会更新。所以它会永远是NaN。 – 2014-09-03 07:22:02
所以用'$ input.val()'替换'seconds'在click事件函数中,这可以解决你的问题 – 2014-09-03 07:23:49
NaN意味着不是一个你不知道的数字。在未来的斗争中可以帮助检测原因 – 2014-09-03 08:00:12