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 相关文章推荐
jQuery 1.5.1 发布,全面支持IE9 修复大量bug
Feb 26 Javascript
10款非常有用的 Ajax 插件分享
Mar 14 Javascript
深入理解javascript严格模式(Strict Mode)
Nov 28 Javascript
JavaScript判断是否为数组的3种方法及效率比较
Apr 01 Javascript
js实现网页多级级联菜单代码
Aug 20 Javascript
JS日期格式化之javascript Date format
Oct 01 Javascript
微信小程序开发之选项卡(窗口底部TabBar)页面切换
Apr 12 Javascript
简单实现js拖拽效果
Jul 25 Javascript
Vue.js轮播图走马灯代码实例(全)
May 08 Javascript
如何阻止小程序遮罩层下方图层滚动
Sep 05 Javascript
js中forEach,for in,for of循环的用法示例小结
Mar 14 Javascript
详解Vue的options
May 15 Vue.js
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
基于mysql的论坛(1)
2006/10/09 PHP
深入php self与$this的详解
2013/06/08 PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
2013/06/24 PHP
PHP中mysql_field_type()函数用法
2014/11/24 PHP
php实现可用于mysql,mssql,pg数据库操作类
2014/12/13 PHP
Ext.MessageBox工具类简介
2009/12/10 Javascript
jquery 学习之二 属性相关
2010/11/23 Javascript
javascript实例分享---具有立体效果的图片特效
2014/06/08 Javascript
Vue.js创建Calendar日历效果
2016/11/03 Javascript
微信小程序 表单Form实例详解(附源码)
2016/12/22 Javascript
jQuery实现简单弹窗遮罩效果
2017/02/27 Javascript
利用JavaScript对中文(汉字)进行排序实例详解
2017/06/18 Javascript
vue检测对象和数组的变化分析
2018/06/30 Javascript
配置eslint规范项目代码风格
2019/03/11 Javascript
vue模式history下在iis中配置流程
2019/04/17 Javascript
react 生命周期实例分析
2020/05/18 Javascript
vue 实现tab切换保持数据状态
2020/07/21 Javascript
vue 项目引入echarts 添加点击事件操作
2020/09/09 Javascript
python统计一个文本中重复行数的方法
2014/11/19 Python
Django中模版的子目录与include标签的使用方法
2015/07/16 Python
基于Python实现文件大小输出
2016/01/11 Python
详解duck typing鸭子类型程序设计与Python的实现示例
2016/06/03 Python
PyQT实现多窗口切换
2018/04/20 Python
浅谈python标准库--functools.partial
2019/03/13 Python
Python匿名函数及应用示例
2019/04/09 Python
ubuntu 16.04下python版本切换的方法
2019/06/14 Python
Python 中的 import 机制之实现远程导入模块
2019/10/29 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
2020/04/21 Python
python 实现任务管理清单案例
2020/04/25 Python
python如何实时获取tcpdump输出
2020/09/16 Python
python中random.randint和random.randrange的区别详解
2020/09/20 Python
具有防紫外线功能的高性能钓鱼服装:Hook&Tackle
2018/08/16 全球购物
安全负责人任命书
2014/06/06 职场文书
小学教师师德师风个人整改措施
2014/09/18 职场文书
安全生产标语口号
2015/12/26 职场文书
详解Vue3使用axios的配置教程
2022/04/29 Vue.js