阅读文章(首页/网页制作/Flash教程/)

深入了解Flash AS中setInterval方法

[日期:2007-11-06] 来源:  作者: [字体: ]

  

  在这个例子里,我们可以用clearInterval(1)来清除间隔rootID。假如我们先点击btn1再点击btn2,那么就可以用clearInterval(2)来清除点击btn1所产生的间隔ID,而用clearInterval(3)来清除点击btn2所产生的间隔ID。相反,如果我们先是点击btn2再点击btn1,那么clearInterval(2)则是清除点击btn2所产生的间隔ID.

  3、给间隔lID添加标识符

  在实际编程中,用上面的clearInterval(数字)这样的方式固然可以清除间隔ID,但是一旦ID过多,我们就会无法识别该清除哪个ID。因此给间隔ID添加标识符就显得非常重要。但是必须把他分配到一个对象的成员变量中。

  比如下面的代码:

newtest();
function newtest(){
var newID=setInterval(_root, "test", 500, "btn2_ID");
}
function test(arg) {
    trace(arg);
}

  这样的标识方法就是错误的,因为testID是一个局部变量,仅作用于new方法内。因而无法在其他地方用clearInterval(newID)来清除此间隔。而去掉前面的var就可以了(此时newID是_root的一个成员变量)。

  4、增加一个清除loadMovieNum加载进来swf的间隔ID的例子:
在IntervalID2.swf文件里的有个间隔ID:

var IntervalID2=setInterval(_root, "test", 1000, "IntervalID2");
function test(arg) {
    trace(arg);
}

  在IntervalID1.swf里:

loadMovieNum("IntervalID2.swf",1)
btn1.onPress = function() {
    clearInterval(_level1.IntervalID2)
                IntervalID1=setInterval(_root, "test", 2000, "IntervalID1");
};
btn2.onPress = function() {
    clearInterval(2)
                //clearInterval(IntervalID1)            
};
function test(arg) {
    trace(arg);
}

  在此例中,如果我们先点击btn1再点击btn2,那么2个间隔ID都会删除,而如果先点击btn2,那么IntervalID1是没有清除的。明白上面三点后,这些应该就是显而易见的了。

  总结:了解了上面几个重点后,我想使用setInterval方法就会非常清楚了,不会怕setInterval了而clearInterval不了的情况了。如有错误,敬请指正。



上一页 [1] [2]    
阅读:
录入:blue1000

评论 】 【 推荐 】 【 打印
上一篇:Flash教程:用AS打造漂亮线条效果
下一篇:用FLASH遮罩效果做图片切换效果
相关文章      
本文评论
发表评论


点评: 字数
姓名:

  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款