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

本文实例讲述了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.jb51.net/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript时间与日期操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

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

(0)

相关推荐

  • JavaScript暂停和继续定时器的实现方法

    对于JavaScript的定时器来说没有严格意义上的暂停和重启,只有清除停止,但是可以通过一些'障眼法'实现 allChild[index].onclick = function(){//当点击目标且满足下面的条件时 让计时器时间暂停 if(gamInt == true){ $("#tu").css("display","block"); //计时器暂停(清除定时器) clearInterval(countdownTimer); //延迟2s后游

  • js 定时器setTimeout无法调用局部变量的解决办法

    javascript中定时器setTimeout的用法一般如下,调用beginrotate之后就进入定时执行rotateloop的一个过程,如下代码: 复制代码 代码如下: var angle = 0; function rotateloop() { if (angle < 360) { angle++; //use angle //...... setTimeout("rotateloop()", 100); } } function beginrotate() { //do

  • JavaScript定时器详解及实例

    JS里设定延时: 使用SetInterval和设定延时函数setTimeout 很类似.setTimeout 运用在延迟一段时间,再进行某项操作. setTimeout("function",time) 设置一个超时对象 setInterval("function",time) 设置一个超时对象 SetInterval为自动重复,setTimeout不会重复. clearTimeout(对象) 清除已设置的setTimeout对象 clearInterval(对象)

  • js定时器的使用(实例讲解)

    在javascritp中,有两个关于定时器的专用函数,分别为: 1.倒计定时器:timename=setTimeout("function();",delaytime);2.循环定时器:timename=setInterval("function();",delaytime); 第一个参数"function()"是定时器触发时要执行的动作,可以是一个函数,也可以是几个函数,函数间用":"隔开即可.比如要弹出两个警告窗口,便可将

  • JavaScript定时器实现的原理分析

    JavaScript中的定时器大家基本在平时的开发中都遇见过吧,但是又有多少人去深入的理解其中的原理呢?下面我们就来分析一下定时器的实现原理. 一.储备知识 在我们在项目中一般会遇见过这样的两种定时器,第一种是setTimeOut,第二种是setInterval,这两种定时器有如下的区别: 1.setTimeout允许设置一个超时对象,超时后执行这个对象,但是只执行一次,无周期 2.setInternval允许设置一个超时对象,超时后执行这个对象,周期等于超时对象指定的时间,周期为无限循环 举一

  • Javascript 定时器调用传递参数的方法

    无论是window.setTimeout 还是window.setInterval,在使用函数名作为调用句柄时都不能带参数,而在许多场合必需要带参数,这就需要想方法解决.例如对于函数hello(_name),它用于针对用户名显示欢迎信息: 复制代码 代码如下: var userName="Tony"; //根据用户名显示欢迎信息 function hello(_name){ alert("hello,"+_name); } 这时,如果企图使用以下语句来使hello函

  • js定时器实现倒计时效果

    本文实例为大家分享了js定时器实现倒计时效果展示的具体代码,供大家参考,具体内容如下 日期函数 倒计时 =  用 将来的时间  -   现在的时间 问题:将来时间 距离 1970 毫秒数   -     现在距离 1970年1 用将来的毫秒数 -  现在的毫秒数   不断转换就可以了 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <t

  • JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)

    废话不多说了,直接给大家贴代码了. // 每隔五秒定时刷新当前窗口 setTimeout("self.location.reload();",5000); //js 定时关闭窗口(ie和FF中测试过) //6秒后自动关闭当前窗口 setTimeout("window.opener=null;window.close()",6000); 下面给大家介绍下javascript定时器使用 使用定时器实现JavaScript的延期执行或重复执行 window对象提供了两个方

  • javascript中SetInterval与setTimeout的定时器用法

    示例一: 查看演示 下载源码 setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式,而setInterval()则是在每隔指定的毫秒数循环调用函数或表达式,直到clearInterval把它清除.也就是说setTimeout()只执行一次,setInterval()可以执行多次.两个函数的参数也相同,第一个参数是要执行的code或句柄,第二个是延迟的毫秒数. setTimeOut用法 setTimeout函数的用法如下: var timeoutID = window.setTi

  • JavaScript定时器和优化的取消定时器方法

    通常用的方法: 启动定时器: 复制代码 代码如下: window.setInterval(Method,Time) Method是定时调用的js方法 Time是间隔时间,单位是毫秒 取消定时器: 复制代码 代码如下: clearInterval(Method); 那么问题来了.用 clearInterval(timerid);来清除,往往不能马上停止,用什么方法比较好解决? 优化方案如下 复制代码 代码如下: var timeout = false; //启动及关闭按钮  function ti

  • 获取焦点时,利用js定时器设定时间执行动作

    进入正题,先说说定时器. 在javascritp中,有两个关于定时器的专用函数,分别为: 1.倒计定时器:timename=setTimeout("function();",delaytime); 2.循环定时器:timename=setInterval("function();",delaytime); 第一个参数"function()"是定时器触发时要执行的动作,可以是一个函数,也可以是几个函数,函数间用":"隔开即可.比

随机推荐