【发布时间】:2016-06-15 14:06:43
【问题描述】:
我想要一个计时器,但我找到了下一个代码。问题是当我将time = new Date(time - 1000); 更改为time = new Date(time + 1000);
这是我的代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>My page</title>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<style>
a{
margin: 0 10px;
color: gray;
}
.time{
font-size: 50px;
margin: 20px;
font-family: monospace;
}
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script>
var startValue = 1000; //Number of milliseconds
var time = new Date(startValue);
var interv;
$(function(){
displayTime();
$(".start").on("click", function(){
interv = setInterval(function(){
//time = new Date(time - 1000);
time = new Date(time + 1000);
displayTime();
}, 1000);
});
$(".stop").on("click", function(){
clearInterval(interv);
time = new Date(startValue);
displayTime();
});
$(".pause").on("click", function(){
clearInterval(interv);
});
$(".reset").on("click", function(){
time = new Date(startValue);
displayTime();
});
});
function displayTime(){
$(".time").text(fillZeroes(time.getMinutes()) + ":" + fillZeroes(time.getSeconds()));
}
function fillZeroes(t){
t += "";
return t.length==1? "0" + t : t;
}
</script>
</head>
<body>
<a href="#" class="start">start</a>
<a href="#" class="stop">stop</a>
<a href="#" class="pause">pause</a>
<a href="#" class="reset">reset</a>
<div class="time"></div>
</body>
</html>
如何增加时间? 谢谢!
【问题讨论】:
-
我发现了下一个荒谬的解决方案:time = new Date(time - -1000);
-
是的,这都是关于隐式类型转换的。欢迎使用 JavaScript ;)
标签: javascript jquery time increment