发新话题
打印

[求救] 打字效果的代码一个小问题

打字效果的代码一个小问题

stop();
var my_sound:Sound = new Sound();
my_sound.attachSound("dazi.mp3")
my_sound.start()
var id:Number = setInterval(dazi, 100);
var i:Number = 0;
var my_fmt:TextFormat = new TextFormat();
var my_str:String = "再别康桥——徐志摩"+newline+newline+"轻轻的我走了,"+newline+"正如我轻轻的来;"+newline+"我轻轻的招手,"+newline+"作别西天的云彩。";
this.createTextField("my_txt", 1, 100, 40, 120, 20);
my_txt.autoSize = true;
my_fmt.leading = 6;
my_fmt.color = 0x000000;
my_txt.setNewTextFormat(my_fmt);
function dazi() {
if (i<=length(my_str)) {
  i++;  
  my_txt.text =my_str.substr(0, i-1);  
}                                                
if (i>length(my_str)) {
  my_sound.stop()
  clearInterval(id);
  setTimeout(function () {
   i = 0;
   my_txt.text = "";
   id = setInterval(dazi, 100);
  }, 5000);
}
}
————————————————————————————————————————————————

最后几行的:
  }, 5000);


这是什么意思?

TOP

setTimeout(function () {
   i = 0;
   my_txt.text = "";
   id = setInterval(dazi, 100);
  }, 5000);
}
}


settimeout和setinterval效果一样,都是间隔一段时间执行一个函数.5000是时间间隔,每间隔5000毫秒执行函数:
function () {
   i = 0;
   my_txt.text = "";
   id = setInterval(dazi, 100);
  }
这是一个匿名函数
明白吗?

TOP

}, 5000); 我是对于这个没明白 格式看着也不对啊

TOP

指调用几次

TOP

TOP

5000指5秒,意思是等待5秒后执行里面的动作。

TOP

这个5000不是指调用几次。
而是指打完一次之后,隔5秒钟再次从头开始显示打字效果。以上代码没有次数限制,也就是打完一次,5秒后重复,再停5秒,再重复..............

TOP

TOP

发新话题