JavaScript分秒倒计时器实现方法


Posted in Javascript onFebruary 02, 2015

本文实例讲述了JavaScript分秒倒计时器实现方法。分享给大家供大家参考。具体分析如下:

一、基本目标

在JavaScript设计一个分秒倒计时器,一旦时间完成使按钮变成不可点击状态

具体效果如下图,为了说明问题,调成每50毫秒也就是每0.05跳一次表,

JavaScript分秒倒计时器实现方法

真正使用的时候,把window.onload=function(){...}中的setInterval("clock.move()",50);从50调成1000即可。

在时间用完之前,按钮还是可以点击的。

时间用完之后,按钮就不能点击了。

二、制作过程

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  

<html xmlns="http://www.w3.org/1999/xhtml">  

<head>  

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  

<title>time remaining</title>  

</head>  

<!--html部分很简单,需要被javascript控制的行内文本与提交按钮都被编上ID-->

<body>  

剩余时间:<span id="timer"></span>  

<input id="go" type="submit" value="go" />  

</body>  

</html>  

<script>  

/*主函数要使用的函数,进行声明*/  

var clock=new clock();  

/*指向计时器的指针*/  

var timer;  

window.onload=function(){  

    /*主函数就在每50秒调用1次clock函数中的move方法即可*/  

    timer=setInterval("clock.move()",50);  

    }  

function clock(){  

    /*s是clock()中的变量,非var那种全局变量,代表剩余秒数*/  

    this.s=140;  

    this.move=function(){  

        /*输出前先调用exchange函数进行秒到分秒的转换,因为exchange并非在主函数window.onload使用,因此不需要进行声明*/  

        document.getElementById("timer").innerHTML=exchange(this.s);  

        /*每被调用一次,剩余秒数就自减*/  

        this.s=this.s-1;  

        /*如果时间耗尽,那么,弹窗,使按钮不可用,停止不停调用clock函数中的move()*/  

        if(this.s<0){  

            alert("时间到");  

            document.getElementById("go").disabled=true;  

            clearTimeout(timer);  

            }  

        }  

    }  

function exchange(time){  

    /*javascript的除法是浮点除法,必须使用Math.floor取其整数部分*/  

        this.m=Math.floor(time/60);  

        /*存在取余运算*/  

        this.s=(time%60);  

        this.text=this.m+"分"+this.s+"秒";  

        /*传过来的形式参数time不要使用this,而其余在本函数使用的变量则必须使用this*/  

        return this.text;  

}  

</script>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
取得一定长度的内容,处理中文
Dec 20 Javascript
JQuery为textarea添加maxlength属性的代码
Apr 07 Javascript
纯js实现背景图片切换效果代码
Nov 14 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
Oct 24 Javascript
jquery 快速回到页首的方法
Dec 05 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
Jun 24 Javascript
javascript查询字符串参数的方法
Jan 28 Javascript
jquery实现动静态条形统计图
Aug 17 Javascript
js图片轮播手动切换效果
Nov 10 Javascript
ES6中的数组扩展方法
Aug 26 Javascript
深入浅析Vue中的 computed 和 watch
Jun 06 Javascript
在React项目中使用Eslint代码检查工具及常见问题
Oct 10 Javascript
JavaScript使用setInterval()函数实现简单轮询操作的方法
Feb 02 #Javascript
同一个网页中实现多个JavaScript特效的方法
Feb 02 #Javascript
JavaScript实现同步于本地时间的动态时间显示方法
Feb 02 #Javascript
JavaScript实现更改网页背景与字体颜色的方法
Feb 02 #Javascript
Javascript实现多彩雪花从天降散落效果的方法
Feb 02 #Javascript
jQuery及JS实现循环中暂停的方法
Feb 02 #Javascript
JQuery动画与特效实例分析
Feb 02 #Javascript
You might like
PHP 函数语法介绍一
2009/06/14 PHP
将FCKeditor导入PHP+SMARTY的实现方法
2015/01/15 PHP
PHP使用token防止表单重复提交的方法
2016/04/07 PHP
PHP实现cookie跨域session共享的方法分析
2019/08/23 PHP
JqGrid web打印实现代码
2011/05/31 Javascript
面向对象的Javascript之一(初识Javascript)
2012/01/20 Javascript
JavaScript Serializer序列化时间处理示例
2014/07/31 Javascript
javascript修改图片src的方法
2015/01/27 Javascript
PHP守护进程实例
2015/03/06 Javascript
Javascript iframe交互并兼容各种浏览器的解决方法
2016/07/12 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
jQuery中过滤器的基本用法示例
2017/10/11 jQuery
vue2.0路由切换后页面滚动位置不变BUG的解决方法
2018/03/14 Javascript
react-native 圆弧拖动进度条实现的示例代码
2018/04/12 Javascript
nodejs require js文件入口,在package.json中指定默认入口main方法
2018/10/10 NodeJs
详解Vue中的scoped及穿透方法
2019/04/18 Javascript
微信小程序实现搜索指定景点周边美食、酒店
2019/05/18 Javascript
JavaScript函数IIFE使用详解
2019/10/21 Javascript
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
2020/07/20 Javascript
JavaScript代码模拟鼠标自动点击事件示例
2020/08/07 Javascript
vue实践---根据不同环境,自动转换请求的url地址操作
2020/09/21 Javascript
[03:11]DOTA2上海特锦赛小组赛第一日recap精彩回顾
2016/02/28 DOTA
详解Python3.1版本带来的核心变化
2015/04/07 Python
Python简明入门教程
2015/08/04 Python
python中PIL安装简单教程
2016/04/21 Python
Python调用C语言的实现
2019/07/26 Python
python实现文字版扫雷
2020/04/24 Python
使用Keras训练好的.h5模型来测试一个实例
2020/07/06 Python
Python实现对word文档添加密码去除密码的示例代码
2020/12/29 Python
园林技术专业求职信
2014/07/28 职场文书
再婚婚前财产协议书范本
2014/10/19 职场文书
迟到检讨书范文
2015/01/27 职场文书
初中数学教学随笔
2015/08/15 职场文书
教您怎么制定西餐厅运营方案 ?
2019/07/05 职场文书
上帝为你开了一扇窗之Tkinter常用函数详解
2021/06/02 Python
Java移除无效括号的方法实现
2021/08/07 Java/Android