zoukankan      html  css  js  c++  java
  • javascript定时器

      在网页的特效制作中,经常要用到定时器,比如:间隔一定时间后页面自动跳转,或者间隔一定时间出现某种效果,像网页上的飞雪连天,或者背景颜色的定时改变等等。

      若要页面定时跳转,简单的可以在head头部的meta标记中设定重定向就可以了。但我要说的是javascript中的定时器,它的功能是十分强大和有用的。

      在javascript中有两个关于定时器的函数,它们是:
      1.倒计定时器:timename=setTimeout("function();",delaytime);
      2.循环定时器:timename=setInterval("function();",delaytime);

      其中倒计定时器顾名思义,是设定一段时间后执行function()函数,而循环定时器则是每隔一段时间都执行function()函数一次。
       倒计定时器一般用在一段时间后的触发的事件,比如页面的定时跳转,有一些站点就是在注册完成后自动跳转到登录页面,或者用于确定是“老客”还是“新 客”,是老客则会点击确定的某个地方(由站长设定)而快速进入站点,如果是“新客”,就不知道特定的点击处,所以可以设定5秒或者10秒转入新客页面。
      循环定时器则用于页面上的持续效果,比如背景用飞雪。

      function()函数,可以是一个函数,也可以是几个函数,中间用;连接,还可以接入javawcript的语句。
    delaytime则是设定间隔的时间,以毫秒为单位。

      定时器的取消
      有时候,我们想把一个定时器去掉,像循环定时器就是一直不停的运动的。
      clearTimeout(timename)来清除setTimeout()定时器,参数timename为setTimeout()函数的返回值;
      clearInterval(timename)来清除setInterval()定时器,参数timename为setInterval()函数的返回值。

    ===================================================

    实例讲解

    使用定时器实现JavaScript的延期执行或重复执行
    window对象提供了两个方法来实现定时器的效果,分别是window.setTimeout()和window.setInterval。其中前者可以使一段代码在指定时间后运行;而后者则可以使一段代码每过指定时间就运行一次。它们的原型如下:
    window.setTimeout(expression,milliseconds);
    window.setInterval(expression,milliseconds);
    其中,expression可以是用引号括起来的一段代码,也可以是一个函数名,到了指定的时间,系统便会自动调用该函数;
    当使用函数名作为调用句柄时, 不能带有任何参数,如window.setTimeout(hello,5000);
    而使用字符串时,则可以在其中写入要传递的参数,如window.setTimeout("hello(‘Jack’)",5000)。
    两个方法的第二个参数是milliseconds,表示延时或者重复执行的毫秒数。


    1.window.setTimeout方法
    该方法可以延时执行一个函数,例如:
    <script language="JavaScript" type="text/javascript">
    <!--
    function hello(){
    alert("hello");
    }
    window.setTimeout(hello,5000);
    //-->
    </script>
    这段代码将使得页面打开5秒钟后显示对话框“hello”。其中最后一句也可以写为:
    window.setTimeout("hello()",5000);
    window.setTimeout(hello,5000);和window.setTimeout("hello()",5000);读者可以体会它们的差别。在window.setInterval方法中也有这样的性质。
    如果在延时期限到达之前取消延执行,可以使用window.clearTimeout(timeoutId)方法,该方法接收一个id,表示一个定时器。这个id是由setTimeout方法返回的,例如:
    <script language="JavaScript" type="text/javascript">
    <!--
    function hello(){
          alert("hello");
    }
    var id=window.setTimeout(hello,5000);
    document.onclick=function(){
         window.clearTimeout(id);
    }
    //-->
    </script>
    这样,如果要取消显示,只需单击页面任何一部分,就执行了window.clearTimeout方法,使得超时操作被取消。

      好了,现在你就可以用定时器来为你的主页增光添彩了。

    出处:http://www.cnblogs.com/phyllis/archive/2011/05/25/2056323.html

    出处:http://www.cnblogs.com/phyllis/archive/2011/05/25/2056324.html

  • 相关阅读:
    图论
    城市吸引力指数
    bzoj3529(莫比乌斯反演+离线+树状数组)
    强制关闭tomcat
    bzoj2154(莫比乌斯反演)
    等差数列求和模板
    联想的显示屏校准(困难)
    bzoj2301(莫比乌斯反演)
    莫比乌斯反演模版
    菜鸟物流的运输网络(网络流)
  • 原文地址:https://www.cnblogs.com/mq0036/p/3412152.html
Copyright © 2011-2022 走看看