位置: 编程技术 - 正文

javascript计时器编写过程与实现方法(js中计时器怎么写)

编辑:rootadmin

推荐整理分享javascript计时器编写过程与实现方法(js中计时器怎么写),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js实现计时器在线时间,js中计时器的用法,js计时器代码从0到100,js计时器代码从0到100,js计时函数,js实现计时器在线时间,js中计时器的用法,js中计时器的用法,内容如对您有帮助,希望把文章链接给更多的朋友!

JavaScript是一门非常容易上手的脚本语言,而且工具繁多,功能强大,因为一直做后端的关系,笔者目前也只是略学一点皮毛。

接下来进入正题——计时器。先谈下计时器的功能:

1.计时器要能够在页面上显示时间

2.每秒钟计时器刷新,秒每满进分钟1,分钟每满进小时1

3.计时器需要能够重置,也就是重新计时

4.计时结束时,需要能够有获取计时时间的方法

以上功能很简单,计时还应该有暂停、继续计时等功能,没关系,我们一个一个来。

第一步:

我们做一个简单的页面,要有一个现实时间的标签,要有开始、暂停俩按钮,页面绘制如下:

不要为一个页面花太多时间哦,这只是帮助你写写第一段代码练练手~

第二步:

我们分析下计时器需要哪些属性:

1.计时,需要开始时间

2.结束时间

3.总共走了多长时间,这个属性是要返回给使用者的

4.展示器,其实就是个jquery对象或者dom对象啦,计时是要在一个地方展示的嘛

5.展示时间需要进行拆解,于是我们有小时属性

6.分钟属性

7.秒属性(其实被总时间囊括了,先记上,万一用得到呢)

我们看下代码:

乍一看好像多了几个属性,因为计时会用到JavaScript的setTimeout方法,该方法会返回一个对象,我们可以利用此对象将setTimeout清除(clearTimeout);

第三步:

我们分析下计时器需要哪些方法:

1.计时器需要启动,于是我们有开始方法

javascript计时器编写过程与实现方法(js中计时器怎么写)

2.计时器需要停止,于是我们有停止方法,停止后应该告诉使用者计了多长时间,于是应该返回时长

3.计时器还应该有个暂停功能,暂停后,可以在暂停的位置上再次开始计时,暂停也应该返回时长

4.围绕启动停止,还应该有每秒钟计时器的内心活动,类似一个委托方法,美秒执行一次

5.呈现逻辑,我们要讲真正的时间显示给页面上的展示器,并且做一些可读性更好的格式转换

上代码,构造函数:

计时器开始:

计时结束:

每秒钟计时器的内心活动:

为了能够展现上图的::,我们需要一段呈现逻辑

我们启动计时器,这个简单的计时器就开始跑了^_^

是不是少了点什么:计时器哪能没有暂停呀,笔者那会构思这些的时候,也没想到暂停功能,正看着它一秒一秒跳动着,傻乐呢,直到业务需要,才想起来,得加上这功能。

没关系,我们继续设计,demo页上添加一个暂停按钮:P

先分析下:

1.暂停后,肯定要在上次暂停的节点上重新开始,这块功能我们做在开始按钮里,于是我们需要一个标识位,来判断是重新开始,还是暂停后开始

2.我们需要记录暂停的时间点

3.暂停的时间间隔最好也能记下来,能用得到,不然再次开始的时候,时间在呈现上会立刻跳到间隔之后(比如暂停时是::,暂停一分钟后,如果不作调整直接开始,时间会变成::)

于是我们添加三个属性:

暂停方法:

重写开始方法和呈现方法:

以上,搞定,我们的计时器拥有了暂停功能~

看下代码全览,核心代码不到一百行。

写到这里,主要工作就做完啦,其实还可以进行封装,利用prototype,将方法全部附到一个对象里,当实例化一个timer对象并初始化一些关键属性后,这些方法都可以被对象调用。这里就不赘述了,感兴趣的童鞋可以试试~

精通JavaScript的this关键字 JS中的this关键字让很多新老JS开发人员都感到困惑。这篇文章将对this关键字进行完整地阐述。读完本文以后,您的困惑将全部消除。您将学会如何在各

JS三级可折叠菜单实现方法 本文实例讲述了JS三级可折叠菜单实现方法。分享给大家供大家参考,具体如下:.ASPX代码:%@PageLanguage="C#"AutoEventWireup="true"CodeFile="NavigateMenu.aspx.cs"Inherit

JavaScript+CSS实现的可折叠二级菜单实例 本文实例讲述了JavaScript+CSS实现的可折叠二级菜单。分享给大家供大家参考,具体如下:.aspx文件:%@PageLanguage="C#"AutoEventWireup="true"CodeFile="NavigateMenu.aspx.c

标签: js中计时器怎么写

本文链接地址:https://www.jiuchutong.com/biancheng/378997.html 转载请保留说明!

上一篇:javascript插件开发的一些感想和心得(js插件大全)

下一篇:精通JavaScript的this关键字(javascript 语言精粹(修订版))

  • 委托加工物资的成本包括哪些内容
  • 全成本核算优缺点
  • 发票货物名称前带星号规定
  • 公司名称变更在哪个网站
  • 个税里任职受雇从业类型
  • 甲方代付材料费合法吗
  • 认缴注册资本的风险
  • 房地产企业还有未来吗
  • 小企业取得存货计量的原则
  • 小规模纳税人2018
  • 小微企业一季度30万免税
  • 申请办理银行承兑流程
  • 营运资金投资额计算公式
  • 坏账准备增加记什么方
  • 手动添加mac
  • 无偿赠送的原材料怎么处理
  • 华为鸿蒙系统如何刷机
  • 公司股权转让的印花税谁来承担
  • 差额增值税发票和全额增值税发票
  • win10默认网关自动清空
  • 什么叫绝地求生
  • 工会会员会费缴费证明怎么开
  • 筹建期间的开办费为什么不属于资产
  • vue框架是什么样子的
  • 新星计划片头好可爱啊
  • vue鼠标悬浮菜单
  • 集团公司对子公司的内部审计
  • 公司的归属权
  • 子公司减资母公司怎么算
  • 个体发票税率开错了怎么办
  • 公司注销公司名下的房子怎么办
  • mysql delete limit 使用方法详解
  • 一般纳税人适用什么会计准则
  • 汽车买卖中介
  • 建筑发票开具与土增税扣有什么关系?
  • 提的税与实际交的税区别
  • 以产品偿还债务怎么算
  • 暂估费用科目
  • 专项补助资金的账务处理
  • 印花税计入哪个会计分录
  • 电子承兑汇票怎么查询
  • 银行总账和明细账
  • 应交所得税如何调整
  • 费用摊销怎么做分录
  • 企业对疫情
  • 制造费用如何结转生产成本
  • 会计往来账怎么用excel做更快
  • sql server数据库中的null(空值)
  • ios 数据库版本升级
  • centos server
  • win8系统怎么清理缓存
  • ubuntu20 server
  • win7桌面右下角输入法图标不见了
  • starting windows
  • mac电池不能被识别吗
  • 用户访问控制手段
  • win7 u盘启动按哪个键
  • 程序员用linux可以干什么
  • python创建二维数据表
  • js堆栈和队列
  • 可重复进行编程的可编程器件有 ( )
  • 提高网页的效率的方法有
  • 用javascript写表单代码
  • Javascript中的this
  • 地盘正针的详解使用
  • 用python抓取网页数据的代码
  • js每天的定时任务
  • jquery获取元素css
  • nodejs创建项目
  • python基本用法
  • python编程基础语法
  • unity ugui组件
  • python模拟ajax
  • 广西电子税务局怎么报税
  • 机打发票真伪查询
  • 举报电话12345管用吗
  • 下列关于消费税委托加工说法正确的是
  • 增值税和消费税申报对比不符怎么处理
  • 2018城镇土地使用税减免政策
  • 广州市公安局分局待遇
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设