急需一个可自定义时间的FLASH倒计时器

2024-12-01 04:12:46
推荐回答(1个)
回答1:

2005年11月11日,将于2008年8月8日晚8时在北京开幕的第二十九届奥运会在筹办过程中迎来了倒计时1000天的重要历史时刻,北京奥组委和社会各界举办了奥运会吉祥物发布暨倒计时1000天活动,迎接了这个特殊日子。这提醒着我们,2008北京奥运会开幕的时刻正朝我们快步地走来。为了记住这一时刻,特意用Flash实现了北京奥运的倒计时。具体步骤如下:

1.启动Flash,新建元件,命名为“倒计时”,行为中选择“影片剪辑”,确定后进入元件编辑窗口。

2.点击文本工具,在属性中选择“静态文本”,划出一个文本框,设置好文本框的参数,输入内容“现在离2008北京奥运开幕还有”。

3.点击文本工具,在属性中选择“动态文本”,划出一个文本框,设置好文本框的参数,变量设置为“DaoJiShiText”。

4.命名所在层为“倒计时”,在时间轴的第一帧上输入以下代码:

EndTime=new Date(2008,7,8,20,0,0);

//定义倒计时结束时间,此处为2008北京奥运开幕日

//注意,月份参数用0-11表示1-12月

NowTime=new Date();

//定义当前时间

zong=Math.floor((EndTime.getTime()-NowTime.getTime())/1000);

//取得当前时间与结束时间相差的总秒数

if(zong>0)

{

tian=Math.floor(zong/(60*60*24));

//取得剩余天数

zong=zong-tian*60*60*24;

shi=Math.floor(zong/(60*60));

//取得剩余小时数

zong=zong-shi*60*60;

fen=Math.floor(zong/60);

//取得剩余分钟数

zong=zong-fen*60;

miao=zong;

//取得剩余秒数

DaoJiShiText=String(tian)+"天"+String(shi)+"时"+String(fen)+"分"+String(miao)+"秒";

}

5.在时间轴的第12帧处插入关键帧,输入语句“gotoAndPlay(1);”。

6.返回主场景,把倒计时影片剪辑拖放至主场景中,测试运行,效果如图所示。

说明:以上代码以北京2008奥运会开幕为倒计时结束时间,首先计算出当前时间与结束时间相隔的总秒数,再分别转换成对应的天数、小时数、分钟数和秒数。由于Flash默认的帧频是12,代码中在第12帧处使用了“gotoAndPlay(1);”语句,用于安排倒计时代码每隔一秒运行一次,使得所显示的倒计时信息每隔一秒刷新一次。