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 相关文章推荐
JavaScript 面向对象编程(2) 定义类
May 18 Javascript
jQuery bind事件使用详解
May 05 Javascript
js语法学习之判断一个对象是否为数组
May 13 Javascript
JavaScript匿名函数与委托使用示例
Jul 22 Javascript
js 判断图片是否加载完以及实现图片的预下载
Aug 14 Javascript
JavaScript制作windows经典扫雷小游戏
Mar 31 Javascript
JavaScript预解析及相关技巧分析
Apr 21 Javascript
不使用script导入js文件的几种方法
Oct 27 Javascript
基于Vue+element-ui 的Table二次封装的实现
Jul 20 Javascript
vue cli4下环境变量和模式示例详解
Apr 09 Javascript
DWR内存兼容及无法调用问题解决方案
Oct 16 Javascript
浅谈克隆 JavaScript
Nov 02 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中CURL方法curl_setopt()函数的参数分享
2013/01/19 PHP
PHP的自定义模板引擎
2017/03/24 PHP
js导出table到excel同时兼容FF和IE示例
2013/09/03 Javascript
js控制input框只读实现示例
2014/01/20 Javascript
全面了解JS中的匿名函数
2016/06/29 Javascript
前端程序员必须知道的高性能Javascript知识
2016/08/24 Javascript
利用jQuery插件imgAreaSelect实现获得选择域的图像信息
2016/12/02 Javascript
手机移动端实现 jquery和HTML5 Canvas的幸运大奖盘特效
2016/12/06 Javascript
jQuery实现鼠标经过显示动画边框特效
2017/03/24 jQuery
JS实现异步上传压缩图片
2017/04/22 Javascript
vue音乐播放器插件vue-aplayer的配置及其使用实例详解
2017/07/10 Javascript
Vue实现数字输入框中分割手机号码的示例
2017/10/10 Javascript
12条写出高质量JS代码的方法
2018/01/07 Javascript
微信小程序实现传参数的几种方法示例
2018/01/10 Javascript
jQuery实现参数自定义的文字跑马灯效果
2018/08/15 jQuery
Vue点击切换颜色的方法
2018/09/13 Javascript
vue3.0 项目搭建和使用流程
2021/03/04 Vue.js
[17:00]DOTA2 HEROS教学视频教你分分钟做大人-帕克
2014/06/10 DOTA
浅谈五大Python Web框架
2017/03/20 Python
Python 比较两个数组的元素的异同方法
2017/08/17 Python
python使用numpy读取、保存txt数据的实例
2018/10/14 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
浅析Windows 嵌入python解释器的过程
2019/07/26 Python
python 画出使用分类器得到的决策边界
2019/08/21 Python
python中shell执行知识点
2020/05/06 Python
Python实现Kerberos用户的增删改查操作
2020/12/14 Python
让IE6、IE7、IE8支持CSS3的脚本
2010/07/20 HTML / CSS
基于HTML5的WebSocket的实例代码
2018/08/15 HTML / CSS
简单的HTML5初步入门教程
2015/09/29 HTML / CSS
UGG雪地靴德国官网:UGG德国
2016/11/19 全球购物
2015年大学生党员承诺书
2015/04/27 职场文书
教师文明餐桌光盘行动倡议书
2015/04/28 职场文书
幼师辞职信范文大全
2015/05/12 职场文书
聚众斗殴罪辩护词
2015/05/21 职场文书
小学语文教师研修感悟
2015/11/18 职场文书
Win11筛选键导致键盘失灵怎么解决? Win11关闭筛选键的技巧
2022/04/08 数码科技