JavaScript定时器常见用法实例分析


Posted in Javascript onNovember 15, 2019

本文实例讲述了JavaScript定时器常见用法。分享给大家供大家参考,具体如下:

定时器

定时器在javascript中的作用

1、制作动画
2、异步操作
3、函数缓冲与节流

定时器类型及语法

/*
  定时器:
  setTimeout 只执行一次的定时器 
  clearTimeout 关闭只执行一次的定时器
  setInterval 反复执行的定时器
  clearInterval 关闭反复执行的定时器
*/
var time1 = setTimeout(myalert,2000);
var time2 = setInterval(myalert,2000);
/*
clearTimeout(time1);
clearInterval(time2);
*/
function myalert(){
  alert('ok!');
}

课堂练习

1、定时器制作移动动画
2、定时器制作无缝滚动
3、定时器制作时钟

<script type="text/javascript">
  window.onload = function(){  
    var oDiv = document.getElementById('div1');
    function timego(){
      var now = new Date();
      var year = now.getFullYear();
      var month = now.getMonth()+1;
      var date = now.getDate();
      var week = now.getDay();
      var hour = now.getHours();
      var minute = now.getMinutes();
      var second = now.getSeconds();
      var str = '当前时间是:'+ year + '年'+month+'月'+date+'日 '+toweek(week)+' '+todou(hour)+':'+todou(minute)+':'+todou(second);
      oDiv.innerHTML = str;
    }
    timego();
    setInterval(timego,1000);
  }
  function toweek(n){
    if(n==0)
    {
      return '星期日';
    }
    else if(n==1)
    {
      return '星期一';
    }
    else if(n==2)
    {
      return '星期二';
    }
    else if(n==3)
    {
      return '星期三';
    }
    else if(n==4)
    {
      return '星期四';
    }
    else if(n==5)
    {
      return '星期五';
    }
    else
    {
      return '星期六';
    }
  }
  function todou(n){
    if(n<10)
    {
      return '0'+n;
    }
    else
    {
      return n;
    }
  }
</script>
......
<div id="div1"></div>

4、定时器制作倒计时

<script type="text/javascript">
  window.onload = function(){
    var oDiv = document.getElementById('div1');
    function timeleft(){
      var now = new Date();
      var future = new Date(2016,8,12,24,0,0);
      var lefts = parseInt((future-now)/1000);
      var day = parseInt(lefts/86400);
      var hour = parseInt(lefts%86400/3600);
      var min = parseInt(lefts%86400%3600/60);
      var sec = lefts%60;
      str = '距离2016年9月12日晚24点还剩下'+day+'天'+hour+'时'+min+'分'+sec+'秒';
      oDiv.innerHTML = str; 
    }
    timeleft();
    setInterval(timeleft,1000);    
  }
</script>
......
<div id="div1"></div>

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

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

Javascript 相关文章推荐
extjs fckeditor集成代码
May 10 Javascript
js String对象中常用方法小结(字符串操作)
Jan 27 Javascript
Jquery选中或取消radio示例
Sep 29 Javascript
用JS在浏览器中创建下载文件
Mar 05 Javascript
JavaScript检查弹出窗口是否被阻拦的方法技巧
Mar 13 Javascript
jquery取消事件冒泡的三种方法(推荐)
May 28 Javascript
javascript中replace使用方法总结
Mar 01 Javascript
Js自动截取字符串长度,添加省略号(……)的实现方法
Mar 06 Javascript
Vue之Watcher源码解析(2)
Jul 19 Javascript
利用three.js画一个3D立体的正方体示例代码
Nov 19 Javascript
基于express中路由规则及获取请求参数的方法
Mar 12 Javascript
javascript canvas检测小球碰撞
Apr 17 Javascript
解决Layui 表格自适应高度的问题
Nov 15 #Javascript
layui前端时间戳转化实例
Nov 15 #Javascript
JavaScript变量基本使用方法实例分析
Nov 15 #Javascript
JavaScript字符串处理常见操作方法小结
Nov 15 #Javascript
layui数据表格重载实现往后台传参
Nov 15 #Javascript
JS实现贪吃蛇游戏
Nov 15 #Javascript
Layui表格监听行单双击事件讲解
Nov 14 #Javascript
You might like
强烈推荐:php.ini中文版(1)
2006/10/09 PHP
PHP连接access数据库
2008/03/27 PHP
PHP 数据结构 算法 三元组 Triplet
2011/07/02 PHP
Yii使用find findAll查找出指定字段的实现方法
2014/09/05 PHP
Yii2.0框架模型添加/修改/删除数据操作示例
2019/07/18 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
JS模拟的QQ面板上的多级可展开的菜单
2009/10/10 Javascript
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
2012/12/11 Javascript
鼠标滚轴控制文本框值的JS代码
2013/11/19 Javascript
js实现日历可获得指定日期周数及星期几示例分享(js获取星期几)
2014/03/14 Javascript
初识Node.js
2015/03/20 Javascript
JS+CSS实现仿支付宝菜单选中效果代码
2015/09/25 Javascript
JavaScript实现图片滑动切换的代码示例分享
2016/03/06 Javascript
浅谈jquery的map()和each()方法
2016/06/12 Javascript
基于cookie实现zTree树刷新后展开状态不变
2017/02/28 Javascript
JS实现的简单拖拽功能示例
2017/03/13 Javascript
JavaScript函数柯里化原理与用法分析
2017/03/31 Javascript
详谈javascript精度问题与调整
2017/07/08 Javascript
关于meta viewport中target-densitydpi属性详解(推荐)
2017/08/18 Javascript
React Native之TextInput组件解析示例
2017/08/22 Javascript
js实现轮播图的两种方式(构造函数、面向对象)
2017/09/30 Javascript
iview中Select 选择器多选校验方法
2018/03/15 Javascript
nodejs简单读写excel内容的方法示例
2018/03/16 NodeJs
vue环形进度条组件实例应用
2018/10/10 Javascript
JavaScript判断浏览器版本的方法
2019/11/03 Javascript
[01:03:33]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python定时执行之Timer用法示例
2015/05/27 Python
pytorch实现用CNN和LSTM对文本进行分类方式
2020/01/08 Python
一款利用css3的鼠标经过动画显示详情特效的实例教程
2014/12/29 HTML / CSS
购买原创艺术品:Zatista
2019/11/09 全球购物
大专毕业生自我鉴定
2013/11/21 职场文书
党的群众路线教育实践活动批评与自我批评
2014/02/16 职场文书
金融保险专业求职信
2014/09/03 职场文书
普通党员自我剖析材料
2014/10/07 职场文书
合作意向协议书
2015/01/29 职场文书
CSS实现两列布局的N种方法
2021/08/02 HTML / CSS