原生代码实现秒表计时(开始 暂停 重置)

话不多说上代码
首先设置style样式和div盒子存放按钮和显示时间

       div{
			width: 300px;
			height:200px;
			background: #333;
			margin:50px auto;
			color: #fff;
			text-align: center;
			line-height: 100px;
		}	
	

	<div>
		<span id="hour">00</span> :
		<span id="min">00</span> :
		<span id="sencond">0</span> 
		<br>
		<input type="button" value="Start" id="start">
		<input type="button" value="Stop" id="stop">
		<input type="button" value="Reset" id="reset">
	</div>`
	

js代码

let startTime;//定义点击start的时间
let dis ;//定义  
	
let b=null;//定时器id
let last=0;	//定义暂停的时间戳
let last2=0;//定义暂停的时间


let h = document.getElementById("hour");
let m = document.getElementById("min");
let s=document.getElementById("sencond");
	
let oStart = document.getElementById("start");
let oStop = document.getElementById("stop");
let oReset = document.getElementById("reset");       

		
function jishi(){
dis=Date.now()-startTime-last2;//现在的时间-点击开始的时间-暂停的时间
h.innerHTML =a(Math.floor((dis/1000/3600)%24));
	
m.innerHTML = a(Math.floor((dis/1000/60)%60));

s.innerHTML=a(Math.floor((dis/1000)%60));
function a(n){
if (n<10){
return "0" + n;}	
else{
return n;}
}
//让时间是两位数	
}
oReset.onclick = function(){
        history.go();
    }
//点击reset
function d(){b=setInterval(jishi,100)}
function c(){

start.setAttribute('disabled','disabled');
//禁用按钮	
startTime = Date.now()
d()
}
	
oStart.addEventListener('click', c) 
//点击start

	
oStop.onclick=function(){	

if(oStop.value=="Stop")	
{
last=Date.now();//点暂停的时间戳
oStop.value="continue"
clearInterval(b);}
	
else if(oStop.value=="continue")
{oStop.value="Stop"
last2+=Date.now()-last;//暂停的总时间
d();
}


}


	
</script>
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值