1. setInterval介绍 setInterval动作的作用是在播放动画的时,每隔一定时间就调用函数,方法或对象。可以使用本动作更新来自数据库的变量或更新时间显示。setInterval动作的语法格式如下:
setInterval(function,interval[,arg1,arg2,......argn]) setInterval(object,methodName,interval[,arg1,arg2,.....argn])
第一种格式是标准动作面板中setInterval函数的默认语法,第二种格式是在专家模式动作中使用的方法。 参数function是一个函数名或者一个对匿名函数的引用。 object参数指定从Object对象派生的对象。methodName制定object参数中要调用的方法。 interval制定对function或methodName调用两次之间的时间,单位是毫秒。后面的arg1等是可选的参数,用于制定传递给function或是methodName的参数。 setInterval它设置的时间间隔小于动画帧速(如每秒10帧,相当于100毫秒),则按照尽可能接近interval的时间间隔调用函数。而且必须使用updateAfterEvent动作来确保以足够的频率刷新屏幕。如果interval大于动画帧速,则只用在每次播放头进入某一帧是才调用,以减小每次刷新屏幕的影响。
1) 使用匿名函数的例子 setInterval(function(){trace("每隔1秒钟我就会显示一次")},1000); //这里的function(){}是没有函数名的函数。成为匿名函数,后面的1000是时间间隔,单位是毫秒。
2) 传递参数的例子 function show1() { trace("每隔1秒我就会显示一次"); } function show2(str) { trace(str); } setInterval(show1,1000); setInterval(show2,2000,"每隔2秒我就会显示一次"); //如果有更多的参数可以在后面继续添加
3) 对象的setInterval 首先,写一个setInterval在动作中调用对象的方法的例子,该例子不需要传递参数。
myobj=new Object();//创建一个新的对象 myobj.interval=function) { trace("每隔1秒我就会显示一次"); }//创建对象的方法。 setInterval(myobj,"interval",1000);//设定时间间隔调用对象的方法。
接下来介绍如何传递参数。其实道理和函数的传递参数是一样的。
myobj=new Object(); myobj.interval-function(str) { trace(str); } setInterval(myobj,"interval",2000," 每隔2秒我就会显示一次"); 注意。要调用为对象定义的方法时,必须在专家模式中使用第二种语法格式。
2. clearInterval方法
clearInterval动作的作用是清除对setInterval函数的调用,它的语法格式如下: clearInterval(intervalid); //intervalid是调用setInterval函数后返回的对象。
下面举一个简单的例子。 function show() { trace("每隔一秒我就会显示一次"); } var sh; sh=setInterval(show,1000); clearInterval(sh); 通过调用clearInterval(sh)解除对show函数的定时调用