你的位置:首页 > 网页设计

[网页设计]javascript(定时函数)


一setTimeout函数和setInterval函数的语法以及应用

1.setTimeout函数

定义和用法:setTimeout()方法用于在指定的毫秒数后调用函数或计算表达式。  
语法:setTimeout(code,millisec);
参数:
code (必需):要调用的函数后要执行的 JavaScript 代码串。   
millisec(必需):在执行代码前需等待的毫秒数。  
注意:
setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。

返回值

一个可以传递给 Window.clearTimeout() 从而取消对 code 的周期性执行的值。


既然setTimeout是一个定时器函数,那么就有一个一个函数来清理定时器,那我们就用到了clearTimeout函数。
clearTimeout(setTimeout()返回的ID值);
2.setInterval定义

setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。

语法

setInterval(code,millisec[,"lang"]);

参数code必需。要调用的函数或要执行的代码串。

millisec必须。周期性执行或调用 code 之间的时间间隔,以毫秒计

返回值

一个可以传递给 Window.clearInterval() 从而取消对 code 的周期性执行的值。

既然setTimeout是一个定时器函数,那么就有一个一个函数来清理定时器,那我们就用到了clearInterval()函数。
clearInterval()(setInterval()返回的ID值);
eg.
1.倒计时的效果
<!DOCTYPE html><html "http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>  <title>倒计时效果</title>  <script type="text/ecmascript">    //使用js方式实现倒计时效果    var t1;    window.onload = function () {           //01定位到开始按钮返回一个dom对象      var btns = document.getElementById('btnStart');      //02.给开始按钮注册单击事件      btns.onclick = function () {        //执行ssetInerval函数第一个参数要定时执行的函数,第二个参数该函数每个多少毫秒执行一次        t1= setInterval(start, 1000);      }      //03定位到停止按钮返回一个dom对象      var btnst = document.getElementById('btnStop');      btnst.onclick = function () {        clearInterval(t1);      }    }    //要隔1秒执行的函数    function start() {      //01.获取div中的文本赋值给一个变量      var divdom = document.getElementById('msg');      var divnum = divdom.innerText;      //判断divnum的值是否为0      if (divnum > 0) {        divnum--;        //把减过的值重新赋值给divnum        divdom.innerText = divnum;      }    }  </script></head><body>  <input type="button" id="btnStart" value="开始" />  <input type="button" id="btnStop" value="停止" /><br />  <div id="msg">10</div></body></html>

 

2.图片的切换
<!DOCTYPE html><html "http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>  <title></title>  <script type="text/javascript">    var count = 1;//定义初始变量默认为第一张图片    window.onload = function () {      //使用定时器函数每隔一秒定义执行一次show函数      setInterval(show,1000);    }    //要执行的函数    function show() {      //如果图片到达最后一张(5张),就将下一张显示的图片改为第一张,如果没有到达最后一张就将显示下一张图片      if (count > 5) {        count = 1;      }      else {        count++;      }      //获取id为myimg的dom对象      var dom = document.getElementById("myimg");      //改变img标签的src属性指向,改变图片      dom.src = "image/"+count+".jpg"    }  </script></head><body>  <img src="image/1.jpg" alt="Alternate Text" width="200px" height="200px" id="myimg" /></body></html>