已解决问题 - 浏览303次

下一个已解决问题
呀呀呀呀

伴读书童

flash 5.0 制作下雨效果的代码

还可输入300个字

mei1000amei1000a

太师

最佳答案 - 由投票者2008-12-30 21:42:07选出

flash下雨的代码2008-11-18 22:59function ee(){
dupLicateMovieClip("mc",c,c);
setProperty(c,_x,random(550));
setProerty(c,_y,random(-100));
updateAfterEvent();
c++;
if(c>300){
clearInterval(kk);}}
kk=setInterval(ee,20);

用法:updateAfterEvent()

参数:无

返回:无

说明:动作.指定在特定影片剪辑执行完成后,更新显示内容.

例如:updateAfterEvent(nouseMove);


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是时间间隔,单位是毫秒。
下面的例子为我们展示如何带参数运行。

function show1(){
trace("每隔1秒我就会显示一次");
}
function show2(str){
trace(str);
}
setInterval(show1,1000);
setInterval(show2,2000,"每隔2秒我就会显示一次");
上面已经将函数的setInterval方法介绍了。
下面我们将介绍对象的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秒我就会显示一次");
注意。要调用为对象定义的方法时,必须在专家模式中使用第二种语法格式。
这样子的话呢,我们来作一个动态显示时间的画面。可以用下面的代码实现。

setInterval(show,1000);
function show(){
time=new Date();
hour=time.getHours();
minu=time.getMinutes();
sec=time.get.Seconds();
datetime=hour+":"+minu+":"+sec;
}//这里的datetime是一个动态文本框的变量名字。
这样子呢,setInterval这个方法大家应该学的很好了。现在呢,我们学习clearInterval. clear

0 0

还可输入300个字

其他回答(1)

  • hgq6789hgq6789

    伴读书童

    以下是代码片段:
    <html>
    <head>
    <style>
    .drop { position: absolute; width: 3; filter: flipV(), flipH();

    font-size: 40; color: blue }
    </style>
    <script language="javascript">
    snow = false; // false-雨; true-雪
    snowsym = " * " //这是符号
    rainsym = " ' " //这儿可以放图片.
    howmany = 10 //雨滴多少/雪片?
    /**************不要给变下面的参数***********/
    if(snow){sym = snowsym; speed=1; angle=10; drops=howmany}
    else{sym = rainsym; speed=50; drops=howmany; angle=6}
    movex = -speed/angle; movey = speed; count = 0;
    function moverain(){
    for(move = 0; move < drops; move++){
    xx[move]+=movex; yy[move]+=mv[move];
    hmm = Math.round(Math.random()*1);
    if(xx[move] < 0){xx[move] = maxx+10;}
    if(yy[move] > maxy){yy[move] = 10;}
    drop[move].left = xx[move]
    drop[move].top = yy[move]+document.body.scrollTop;
    }setTimeout('moverain()','1')}
    </script>
    </head>
    <body bgcolor=#000000>
    <script language="javascript">
    if (document.all){
    drop = new Array(); xx = new Array(); yy = new Array(); mv = new

    Array()
    ly = "document.all[\'"; st = "\'].style"
    for(make = 0; make < drops; make++){
    document.write('<div id="drop'+make+'" class=drop>'+sym+'</div>');
    drop[make] = eval(ly+'drop'+make+st);
    maxx = document.body.clientWidth-40
    maxy = document.body.clientHeight-40
    xx[make] = Math.random()*maxx;
    yy[make] = -100-Math.random()*maxy;
    drop[make].left = xx[make]
    drop[make].top = yy[make]
    mv[make] = (Math.random()*5)+speed/4;
    drop[make].fontSize = (Math.random()*10)+20;
    if(snow){col = 'white'}else{col = 'blue'}
    drop[make].color = col;
    }
    window.onload=moverain
    }
    </script>
    </body>
    </html>



    <html>
    <head>
    <style>
    .drop { position: absolute; width: 3; filter: flipV(), flipH();

    font-size: 40; color: blue }
    </style>
    <script language="javascript">
    snow = false; // false-雨; true-雪
    snowsym = " * " //这是符号
    rainsym = " ' " //这儿可以放图片.
    howmany = 10 //雨滴多少/雪片?
    /**************不要给变下面的参数***********/
    if(snow){sym = snowsym; speed=1; angle=10; drops=howmany}
    else{sym = rainsym; speed=5

    还可输入300个字

返回知识堂首页>>

知识专家团招聘知识专家
知识堂2009年知识盘点

生活画报

更多
1
Copyright © 2009 Yahoo.com.cn 版权所有 不得转载 | 使用须知 | 著作权声明 | 京ICP证000022号 | 国家药监局(京)-经营性-2004-0039
阿里巴巴集团 - 阿里巴巴 | 淘宝站 | 支付宝 | 口碑网
文明办网举报热线 010-65986060