setinterval和clearinterval,setInterval
关于js中setInterval和clearInterval的问题
timer=setInterval(fnt,1000)是使timer重新指向定时器,
以便做clearInterval(timer)清除定时器的操作
直接setInterval(fnt,1000),后期无法停止该定时器,
会越积累越多,致系统卡死
AS2.0 setInterval 和 clearInterval的用法
错误是因为你没有重置count,使用以下代码即可
init();
var setInt;
var count = 0;
function init()
{
count = 0
setInt = setInterval(info, 500);
}
function clearInt()
{
clearInterval(setInt);
//trace(setInt);
}
function info()
{
if (count 5)
{
clearInt();
setInt = 0;
count = 0;
init();
}
trace(count + " ========= " + setInt);
count++;
}
js如何触发一个函数的同时停止另外一个函数
通过面向对象实现,一个函数具有 run()、stop() 两个方法,以及一个status属性,默认status为true,而run()方法内部则一开始就判断 status。
如果为true则执行,如果为false则return。而当执行stop()的时候,目的就是把status属性改为false,这样run()方法就停止掉了,js的面向对象要注意作用域和闭包的用法。
setInterval和clearInterval这两个函数可以实现,一个是多少毫秒执行一次,一个是停止setInterval中的函数。
扩展资料:
注意事项:
1、在调用函数时,如果需要把一些数据一起传递过去,被调用函数就需要用参数来接收。
2、参数列表中变量的个数根据实际传递的数据的多少来确定。
3、一个函数到底有没有返回值,就看有没有return,因为只有return才可以返回数据,在开发中往往根据需求来设计函数需不需要返回值。
4、函数中,可以有多个return语句,但是只要执行到一个return语句,那么就意味着这个函数的调用完成。
参考资料来源:百度百科-函数
参考资料来源:百度百科-javascript
参考资料来源:百度百科-停止
参考资料来源:百度百科-触发
求助:flash 取消函数周期回调问题: setInterval() 和 clearInterval()
我在最早学as2的时候,就对这个函数比较搞不定,是用来计时的,而且,我们的程序会使用循环帧,如果一次没有停掉回调,下次再循环的时候,计时就显得全部混乱了,所以我个人更倾向于用enterFrame另外写函数来代替,而且as3也完全取消了这个函数,代替以timer
我修改的代码如下:
c=1;
var timeCount = 0;
this.onEnterFrame = function(){
timeCount ++;
if(timeCount = 200){
timeCount = 0;
duplicateMovieClip("yudi",c,c); // yudi 为一个雨滴影片剪辑
setProperty(c,_x,random(666)); //设置 c 的 x坐标
setProperty(c,_y,random(-108.2)); //设置 c 的 y坐标
updateAfterEvent(); //更新舞台 (这个怎么有跟没有没啥区别呢)
//注解:这句意思是强制刷新,一般刷新不会出问题的时候,确实是有和没有一样
c++; // c 自加
if(c50) //判断语句
{
delete this.onEnterFrame;
}
}
}
//另,如果中途需要跳转帧的地方,记得加这句 delete this.onEnterFrame;
应该是没问题的,不知道你实力什么的怎么定的,所以只是在你的程序上修改的
如果方便,就发到我邮箱,我再帮你看看
marywisher@hotmail.com
在javascript中 setInterval()、clearInterval()、clearTimeout()等等常用的函数的含义是什么?
setInterval()是一种定时器,它按照指定的设置时间(以毫秒计)来调用函数的方法。clearInterval()是结束定时器的循环调用函数。除非调用clearInterval()方法,否则无限循环执行回调函数。例如:
var?i?=?0;//定义一个变量i
var?t?=?setInterval(function(){
????if(i?===?60){
????????clearInterval(t);//假如i是60,则清除此定时器,结束循环回调
????}else{
????????i++;
????????console.log(i);
????}
},1000);//设置每1000毫秒(一秒钟)回调一次函数
setTimeout()同理也是一种定时器,对应的结束定时的方法是clearTimeout()。与setInterval()不同的是,此定时器只执行一次,例如:
var?t?=?setTimeout(function(){
????console.log("OK");
},1000);//一秒后在控制台输出字符串"OK"