位置: 编程技术 - 正文

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 语言精粹(修订版))

  • 应交税金和应交税费有啥区别
  • 进项税额转出借贷
  • 受托代销商品和受托代销商品款怎么列示
  • 职工福利费开了没有发票
  • 房地产公司固定资产管理制度
  • 国税对个体户征收哪些税?
  • 固定资产简易办法3%减按2%
  • 俱乐部会员有什么用
  • 工程会计做账流程及会计分录
  • 资产负债表和业务活动表勾稽关系不对怎么查
  • 小规模企业所得税优惠政策最新2023
  • 个人借款取得的利息收入要交税吗
  • 转让股权凭证怎么写
  • 会计准则规定
  • 小规模农产品可以抵扣吗
  • 属于外来凭证的单据是
  • 融资租赁机器款分期开票怎么做账?
  • Mac Chrome打开HTTPS证书错误问题解决方法
  • 初级会计实务的心得体会
  • 注销公司如何清算
  • 网络打印机找不到网络路径
  • linux用不了yum
  • php session_start
  • 潘塔纳尔湿地位于巴拉圭盆地
  • 如何知道是干皮还是油皮
  • thinkphp调用控制器中的方法
  • Request获取请求数据中文乱码问题
  • docker-p
  • 小规模纳税人记账需要哪些账本
  • html六边形的盒子怎么做
  • 开具红字发票资料清单
  • thinkphp框架怎么用
  • 特殊劳务交易的法律规定
  • 拖欠工程款利息的司法解释
  • 结转损益利息收入在哪方
  • 财务报表逾期了两个月有罚款吗
  • python报错怎么办
  • 本年缴纳上年的所得税填年报
  • 劳务派遣差额征税政策
  • 企业所得税研发费用如何加计扣除?
  • 营业外收入汇算清缴时需要调增吗
  • mysql大分页优化
  • 分红是怎么分的?
  • 建筑企业结转成本附件
  • 海关完税凭证如何取得
  • 补开发票交税
  • 个体工商户怎么变更法人
  • 净现金流量算残值么
  • 收到对方公司退款
  • 冲销预付账款怎么填记账凭证
  • 金蝶如何删除结转损益的凭证
  • 提前还贷款计算机
  • 小规模纳税人季度不超30万怎么做账
  • mysql数据库随机取数据
  • sql语句相似度计算
  • mysql中的去重
  • linux命令rz -y
  • windowsxp怎么删除所有文件
  • 升级ubuntu
  • autorun.dll
  • 卸载声卡驱动有什么影响
  • xp系统电脑开机密码忘记了
  • linux设置环境变量的命令
  • windows7禁止开机启动
  • win7系统升级win10教程
  • ubuntu 软件删除
  • cocos2d-x教程
  • Android OpenGL ES(三)----编程框架
  • linux中rpm命令详解
  • 批处理文件修改注册表键值
  • js秒数转时间
  • Node.js中的全局变量有哪些
  • python jsonp
  • jquery不生效的原因
  • 税务通知书一般什么内容
  • 我是一般纳税人对方给我开的普票
  • 湖南国税电子税务局网
  • 西安二手房几年可以过户
  • 增值税综合税率是什么意思啊造价
  • 举报信如何投递
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设