javascript实现一款好看的秒表计时器


Posted in Javascript onSeptember 05, 2020

本文实例为大家分享了javascript实现秒表计时的具体代码,供大家参考,具体内容如下

实现图片:

分+秒+跑秒

javascript实现一款好看的秒表计时器

时+分+秒+跑秒

javascript实现一款好看的秒表计时器

需求分析:

1、显示整个秒表页面;

2、在点击“开始”按钮之后,开始计时,并将按钮转为“暂停”按钮,在点击“暂停”按钮之后,将按钮转为“开始”按钮,并停止计时;

3、在点击“复位”按钮之后,将显示的计时清零,并将按钮变回“开始”按钮。

页面结构:

<div id="miaoBiao">
 <div id="dingShi">
 <p>
 <!-- <span id="houer">00</span> : -->
 <span id="minute">00</span> : 
 <span id="second">00</span> 
 <span id="msecond">00</span>
 </p>
 <!-- 显示:时:分:秒 跑秒 ,“时”解除注释可使用 -->
 <button id="btn1">开始</button>
 <button id="reset">复位</button>
 </div>
</div>

页面的主体结构主要包括四个span,包含四个秒表上显示的时间;以及两个按钮:“开始/暂停”与“复位”按钮。

一些函数:

id节点调用函数

function jieDian(id){
   return document.getElementById(id);
  }

通过调用此函数可以简化页面代码

开始运行函数

function startBtn(){
 timer1=setInterval(function(){
 i++
 jieDian("msecond").innerHTML =doubleLing(i%100);
 jieDian("second").innerHTML =doubleLing(parseInt(i/100)%60) ;
 jieDian("minute").innerHTML =doubleLing(parseInt(i/6000)%60) ;
 jieDian("houer").innerHTML =doubleLing(parseInt(i/360000)) ;
 },10)
 }
 //开始运行函数

暂停函数

function pasueBtn(){
 clearInterval(timer1)
 }

赋0函数

function doubleLing(i){
 if(i<10){
 return "0"+i
 }else{
 return i
 }
 }
//赋0函数,当时分秒显示为个位数时,在前面加上“0”

完整代码,复制可用:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>Document</title>
 <style>
 #miaoBiao{
 width: 550px;height: 450px;background-color: #1d262d;overflow: hidden;
 margin: 50px auto;border-radius: 150px;
 }
 #dingShi{
 width: 400px;height: 230px;background-color:#d0eaeb;text-align: center;
 padding-top: 0px;margin: 110px auto;border-radius: 40px;
 }
 #dingShi p{
 font-size: 40px;padding-top: 40px;
 }
 #minute,#second,#houer{
 font-size: 56px;
 }
 #dingShi button{
 width: 80px;height: 35px;background-color: orange;margin: 10px auto;
 line-height: 35px;font-weight: bold;margin: 0px 20px;
 }
 </style>
</head>
<body>
 <div id="miaoBiao">
 <div id="dingShi">
 <p>
 <span id="houer">00</span> : 
 <span id="minute">00</span> : 
 <span id="second">00</span> 
 <span id="msecond">00</span>
 </p>
 <!-- 显示:时:分:秒 跑秒 ,“时”解除注释可使用 -->
 <button id="btn1">开始</button>
 <button id="reset">复位</button>
 </div>
 </div>
 
 <script>
 var i = 0;
 var timer1=null;
 var isRunning =false;
 //isRunning用于判断当前是否正在运行
 function jieDian(id){
 return document.getElementById(id);
 }
 //id节点调用函数

 function startBtn(){
 timer1=setInterval(function(){
 i++
 jieDian("msecond").innerHTML =doubleLing(i%100);
 jieDian("second").innerHTML =doubleLing(parseInt(i/100)%60) ;
 jieDian("minute").innerHTML =doubleLing(parseInt(i/6000)%60) ;
 jieDian("houer").innerHTML =doubleLing(parseInt(i/360000)) ;
 },10)
 }
 //开始运行函数

 function pasueBtn(){
 clearInterval(timer1)
 }
 //暂停函数

 jieDian("btn1").onclick = function(){
 if(!isRunning){
 jieDian("btn1").innerHTML = "暂停";
 isRunning = true;
 startBtn();
 }else{
 jieDian("btn1").innerHTML="开始";
 isRunning = false;
 pasueBtn();
 }
 }
 //“开始”与“暂停”点击按钮:
 //当按钮显示为“开始”,点击之后,将按钮转为“暂停”按钮,并触发相应条件;
 //当按钮显示为“暂停”,点击之后,将按钮转为“开始”按钮,并触发相应条件。

 jieDian("reset").onclick =function(){
 clearInterval(timer1)
 i = 0;
 isRunning = false;
 jieDian("btn1").innerHTML="开始";
 jieDian("msecond").innerHTML ="00";
 jieDian("second").innerHTML ="00";
 jieDian("minute").innerHTML ="00";
 jieDian("houer").innerHTML ="00";
 }
 //复位按钮,点击之后将秒表各值复位,并“暂停”秒表

 function doubleLing(i){
 if(i<10){
 return "0"+i
 }else{
 return i
 }
 }
 //赋0函数,当时分秒显示为个位数时,在前面加上“0”
 </script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript Undefined,Null类型和NaN值区别
Oct 22 Javascript
jquery常用技巧及常用方法列表集合
Apr 06 Javascript
JavaScript判断密码强度(自写代码)
Sep 06 Javascript
28个常用JavaScript方法集锦
Jan 14 Javascript
jQuery改变form表单的action,并进行提交的实现代码
May 25 Javascript
JSONP原理及简单实现
Jun 08 Javascript
使用snowfall.jquery.js实现爱心满屏飞的效果
Jan 05 Javascript
jQuery插件FusionCharts实现的3D帕累托图效果示例【附demo源码】
Mar 25 jQuery
vue.js获得当前元素的文字信息方法
Mar 09 Javascript
通过jquery的ajax请求本地的json文件方法
Aug 08 jQuery
JavaScript中toLocaleString()和toString()的区别实例分析
Aug 14 Javascript
浅谈vue引用静态资源需要注意的事项
Sep 28 Javascript
vue组件讲解(is属性的用法)模板标签替换操作
Sep 04 #Javascript
vue 动态组件(component :is) 和 dom元素限制(is)用法说明
Sep 04 #Javascript
Vue中component标签解决项目组件化操作
Sep 04 #Javascript
JS数组转字符串实现方法解析
Sep 04 #Javascript
v-slot和slot、slot-scope之间相互替换实例
Sep 04 #Javascript
Vue插槽_特殊特性slot,slot-scope与指令v-slot说明
Sep 04 #Javascript
解决vue scoped scss 无效的问题
Sep 04 #Javascript
You might like
WINXP下apache+php4+mysql
2006/11/25 PHP
PHP小教程之实现双向链表
2014/06/12 PHP
php多进程中的阻塞与非阻塞操作实例分析
2020/03/04 PHP
PHP 构造函数和析构函数原理与用法分析
2020/04/21 PHP
PHP var关键字相关原理及使用实例解析
2020/07/11 PHP
【消息提示组件】,兼容IE6/7&amp;&amp;FF2
2007/09/04 Javascript
$.ajax json数据传递方法
2008/11/19 Javascript
jquery ajax请求实例深入解析
2012/11/26 Javascript
JavaScript中的Math 使用介绍
2014/04/21 Javascript
js实现点击链接后窗口缩小并居中的方法
2015/03/02 Javascript
EasyUI加载完Html内容样式渲染完成后显示
2016/07/25 Javascript
Web打印解决方案之普通报表打印功能
2016/08/29 Javascript
jquery mobile实现可折叠的导航按钮
2017/03/11 Javascript
详解Angular中的自定义服务Service、Provider以及Factory
2017/04/22 Javascript
vue-cli webpack 开发环境跨域详解
2017/05/18 Javascript
解决vue项目报错webpackJsonp is not defined问题
2018/03/14 Javascript
js动态引入的四种方法
2018/05/05 Javascript
JS实现数组的增删改查操作示例
2018/08/29 Javascript
在Vue项目中引入JQuery-ui插件的讲解
2019/01/27 jQuery
深入探讨JavaScript的最基本部分之执行上下文
2019/02/12 Javascript
说说如何利用 Node.js 代理解决跨域问题
2019/04/22 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
vue中英文切换实例代码
2020/01/21 Javascript
原生javascript制作的拼图游戏实现方法详解
2020/02/23 Javascript
ElementUI Tree 树形控件的使用并给节点添加图标
2020/02/27 Javascript
JavaScript array常用方法代码实例详解
2020/09/02 Javascript
javascript实现简单留言板案例
2021/02/09 Javascript
利用 Monkey 命令操作屏幕快速滑动
2016/12/07 Python
python通过文本在一个图中画多条线的实例
2020/02/21 Python
吉列剃须刀英国官网:Gillette英国
2019/03/28 全球购物
联想阿根廷官方网站:Lenovo Argentina
2019/10/14 全球购物
计算机相关专业自荐信
2014/07/02 职场文书
银行转正自我鉴定
2014/09/29 职场文书
具结保证书范本
2015/05/11 职场文书
Python 如何实现文件自动去重
2021/06/02 Python
深入解读Java三大集合之map list set的用法
2021/11/11 Java/Android