上周由于工作需要,使用flash+AS3开发的倒计时显示效果。
具体的实现代码:
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.MouseEvent;
import flash.net.URLRequest;
function doubleString(time:int):String{
var r:String=time.toString();
if(r.length==1){
return "0"+r;
}else{
return r;
}
}
function goRedirect(evt:MouseEvent):void {
var req:URLRequest = new URLRequest("http://xxx.domain.com/greatmessage");
navigateToURL(req,'_blank');
}
var ticker:Timer = new Timer(1000);
ticker.addEventListener(TimerEvent.TIMER, onTicker);
ticker.start();
tmBtn.addEventListener(MouseEvent.CLICK, goRedirect);
var downDate:Date = new Date(2011,3,22,24,0,0); //月份是从0开始计数的
function onTicker(evt:TimerEvent):Boolean {
var currentDate:Date = new Date();
var currentTime:Number = currentDate.valueOf();
var endTime:Number = downDate.valueOf();
var currentOffset:Number = currentDate.getTimezoneOffset();
var minusN:Number = endTime - currentTime;
//check if we started
if( minusN <= 0)
{
restime_day.text = '0';
restime_hour.text = '00';
restime_minute.text = '00';
restime_second.text = '00';
return true;
}
var minusSecond:int = downDate.getSeconds() - currentDate.getSeconds();
var minusMinute:int;
var minusHour:int;
var minusDate:int;
var minusMonth:int;
var minusYear:int;
var sFlag:Boolean;
var mFlag:Boolean;
var hFlag:Boolean;
var monFlag:Boolean;
if(minusSecond < 0){
minusSecond = 60+minusSecond;
sFlag = true;
}
minusMinute = downDate.getMinutes() - currentDate.getMinutes();
if(sFlag)
minusMinute--;
if(minusMinute < 0){
minusMinute = 60 + minusMinute;
mFlag = true;
}
minusHour = downDate.getHours() - currentDate.getHours();
if(mFlag)
minusHour--;
if(minusHour < 0){
minusHour = 24 + minusHour;
hFlag = true;
}
minusDate = downDate.getDate() - currentDate.getDate();
minusMonth = downDate.getMonth() - currentDate.getMonth();
if(hFlag){
minusDate--;
}
if(minusDate < 0){
switch(currentDate.getMonth() + 1){
case 1,3,5,7,8,10,12:{
minusDate = downDate.getDate() + (31- currentDate.getDate());
}
case 4,6,9,11:{
minusDate = downDate.getDate() + (30- currentDate.getDate());
}
case 2:{
if((currentDate.getFullYear()%4 == 0 && currentDate.getFullYear()%100 != 0)||(currentDate.getFullYear()%400 == 0)){//闰年
minusDate = downDate.getDate() + (29 - currentDate.getDate());
}else{
minusDate = downDate.getDate() + (28- currentDate.getDate());
}
}
}
minusMonth--;
}
if(minusMonth < 0){
minusMonth = 12+minusMonth;
monFlag = true;
}
minusYear = downDate.getFullYear() - currentDate.getFullYear();
if(monFlag){
minusYear--;
}
restime_day.text = String(minusDate);
restime_hour.text = doubleString(minusHour);
restime_minute.text = doubleString(minusMinute);
restime_second.text = doubleString(minusSecond);
return true;
}
上述代码只能使用AS3.0来实现,其中,Timer定时器类只在AS3.0才实现,1.0、2.0版本时,主要使用setInterval来实现的。
- 大小: 234.1 KB
分享到:
相关推荐
### 用Flash制作任意时间的倒计时器 本文将详细介绍如何使用Flash软件来制作一个可以自定义时间的倒计时器。通过本教程的学习,读者不仅能够掌握基本的Flash操作技巧,还能够理解倒计时器的工作原理,并能够根据...
flash cs6 制作倒计时器,可以设置任意分钟和秒数,使用AS3.0的Timer类编写,计时相对于AS2.0的setInterval更为准确。
描述中提到的“这是一个flash制作并且用代码编写的倒计时”,意味着这个项目不仅包含图形和动画元素,还包含了用ActionScript编写的逻辑代码,以实现随着时间流逝而更新的倒计时效果。在Flash中,开发者可以创建一个...
300秒的倒计时,AS2.0。可以用于各种场合,将其中的变量n改变即可改变秒数。
制作倒计时效果Flash涉及的技术和知识点包括: 1. ActionScript编程:理解基本语法、类和对象的概念,以及如何使用它们来控制时间和更新界面。 2. Flash时间轴和关键帧:掌握如何在时间轴上创建和编辑动画,以及...
7. **发布设置**:在完成倒计时器的制作后,开发者需要在Flash中设置发布参数,选择合适的SWF版本,以确保兼容不同的浏览器和平台。 通过学习和分析这个"4分钟倒计时"项目,初学者可以掌握Flash的基本操作,了解...
flash as 3.0 主要是flash中actionscript脚本语言的练习使用,包括random函数,if else条件判断语句的使用。可以作为案例来提供学生学习flash脚本语言的兴趣。附word版本详细教程及flash源代码。
FLASH as3 多项计时器 用于flash游戏的制作 FLASH as3 多项计时器
3. `Countdown.as` - 倒计时类文件,负责倒计时的计算和更新。 4. `Config.xml` - 可能用于存储用户自定义的设置和参数。 5. `Resources/` - 文件夹,包含了图片、声音等资源文件。 6. `Documentation/` - 文件夹,...
3. **倒计时功能**: 在Flash中实现倒计时,通常需要编写AS3.0代码来控制时间并更新显示。这涉及到使用`Date`类来获取当前时间,计算目标日期与当前日期之间的差距,然后通过`Timer`类来定时更新显示。 4. **Timer类...
《十分钟倒计时Flash制作详解》 在信息技术领域,Flash是一款经典的动画制作工具,它以其强大的交互性和丰富的视觉效果深受用户喜爱。本文将详细解析如何使用Flash制作一款可自定义的10分钟倒计时器,并对相关技术...
制作一些简单的flash倒计时,as3脚本,简单明了
本知识点主要关注"Flash倒计时图片切换"这一功能,它是一种常见的动态效果,常用于活动预告、限时促销等场景,通过动态显示时间流逝来吸引用户的注意力。 首先,我们要理解“倒计时”的概念。倒计时是指从一个设定...
AS制作的广告倒计时可以与服务器时间同步,确保广告展示的准确性和公平性。通过定时更新广告倒计时的文本或图像,可以清晰地呈现剩余时间。 5. 页面跳转倒计时 在网页设计中,有时会需要在一段时间后自动跳转到...
flash as2.0写的一个简单的钟表,供需要的朋友参考。
### Flash AS2.0代码大全与Flash制作技巧 在Flash AS2.0中,开发者可以利用ActionScript语言来实现各种动态效果和交互功能。本文将详细介绍如何使用Flash AS2.0进行开发,包括加载SWF文件、加载文本数据、处理声音...
使用as2.0制作的flash计时器,可选择正计时或者倒计时,可自己输入计时时间,有结束提示音。
总结起来,通过学习和实践这个“FLASH入门之计时器制作”教程,你可以掌握在Flash中创建自定义计时器的基本步骤。计时器功能的应用广泛,不仅可以用于倒计时、计分系统,还可以与各种用户交互结合,提升Flash项目的...
- 首先,需要在Flash中创建一个AS3项目,并设置舞台上的对象。 - 然后,编写ActionScript代码来加载XML文件,解析其中的动画参数。 - 解析完成后,根据XML数据设置动画效果,可能涉及到`startTween()`或`...