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 相关文章推荐
用Jquery实现可编辑表格并用AJAX提交到服务器修改数据
Dec 27 Javascript
js 点击按钮弹出另一页,选择值后,返回到当前页
May 26 Javascript
javascript+xml实现简单图片轮换(只支持IE)
Dec 23 Javascript
JavaScript关闭当前页面(窗口)不带任何提示
Mar 26 Javascript
jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)
May 27 Javascript
利用js获取下拉框中所选的值
Dec 01 Javascript
Bootstrap基本样式学习笔记之按钮(4)
Dec 07 Javascript
jQuery实现对象转为url参数的方法
Jan 11 Javascript
JavaScript之面向对象_动力节点Java学院整理
Jun 29 Javascript
jQuery实现标签子元素的添加和赋值方法
Feb 24 jQuery
JS实现图片上传多次上传同一张不生效的处理方法
Aug 06 Javascript
vue动态改变背景图片demo分享
Sep 13 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 数据库字段复用的基本原理与示例
2011/07/22 PHP
关于zend studio 出现乱码问题的总结
2013/06/23 PHP
浅析PKI加密解密 OpenSSL
2013/07/01 PHP
php计算几分钟前、几小时前、几天前的几个函数、类分享
2014/04/09 PHP
php专用数组排序类ArraySortUtil用法实例
2015/04/03 PHP
php文件上传后端处理小技巧
2016/05/22 PHP
PHP 计算两个特别大的整数实例代码
2018/05/07 PHP
Django 标签筛选的实现代码(一对多、多对多)
2018/09/05 PHP
jQuery与其它库冲突的解决方法
2010/06/25 Javascript
Ext.get() 和 Ext.query()组合使用实现最灵活的取元素方式
2011/09/26 Javascript
当鼠标移动到图片上时跟随鼠标显示放大的图片效果
2013/06/06 Javascript
js父页面与子页面不同时显示的方法
2014/10/16 Javascript
JQuery遍历元素的父辈和祖先的方法
2016/09/18 Javascript
canvas实现图像放大镜
2017/02/06 Javascript
jQuery阻止移动端遮罩层后页面滚动
2017/03/15 Javascript
JavaScript之浏览器对象_动力节点Java学院整理
2017/07/03 Javascript
使用jQuery给Table动态增加行、清空table的方法
2018/09/05 jQuery
解决Vue 刷新页面导航显示高亮位置不对问题
2019/12/25 Javascript
JS轮播图的实现方法
2020/08/24 Javascript
在vue项目中引用Antv G2,以饼图为例讲解
2020/10/28 Javascript
python安装教程 Pycharm安装详细教程
2017/05/02 Python
python3读取MySQL-Front的MYSQL密码
2017/05/03 Python
在PyCharm中实现关闭一个死循环程序的方法
2018/11/29 Python
在python中实现强制关闭线程的示例
2019/01/22 Python
python [:3] 实现提取数组中的数
2019/11/27 Python
通过案例解析python鸭子类型相关原理
2020/10/10 Python
python+openCV对视频进行截取的实现
2020/11/27 Python
pycharm最新激活码有效期至2100年(亲测可用)
2021/02/05 Python
世界上最大的专业美容用品零售商:Sally Beauty
2017/07/02 全球购物
银行自荐信范文
2013/10/07 职场文书
旅游管理毕业生自荐信
2013/11/05 职场文书
给校长的建议书200字
2014/05/16 职场文书
2014年学校工作总结
2014/11/20 职场文书
车间主任岗位职责
2015/02/03 职场文书
创业计划书之旅游网站
2019/09/06 职场文书
go:垃圾回收GC触发条件详解
2021/04/24 Golang