`
purpen
  • 浏览: 796668 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

flash+AS3制作的倒计时效果

阅读更多

上周由于工作需要,使用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操作技巧,还能够理解倒计时器的工作原理,并能够根据...

    Flash倒计时器(可设置时间)

    flash cs6 制作倒计时器,可以设置任意分钟和秒数,使用AS3.0的Timer类编写,计时相对于AS2.0的setInterval更为准确。

    flash 倒计时swf以及源代码

    描述中提到的“这是一个flash制作并且用代码编写的倒计时”,意味着这个项目不仅包含图形和动画元素,还包含了用ActionScript编写的逻辑代码,以实现随着时间流逝而更新的倒计时效果。在Flash中,开发者可以创建一个...

    Flash AS2.0 300秒倒计时

    300秒的倒计时,AS2.0。可以用于各种场合,将其中的变量n改变即可改变秒数。

    倒计时效果flash

    制作倒计时效果Flash涉及的技术和知识点包括: 1. ActionScript编程:理解基本语法、类和对象的概念,以及如何使用它们来控制时间和更新界面。 2. Flash时间轴和关键帧:掌握如何在时间轴上创建和编辑动画,以及...

    FLASH分钟倒计时器

    7. **发布设置**:在完成倒计时器的制作后,开发者需要在Flash中设置发布参数,选择合适的SWF版本,以确保兼容不同的浏览器和平台。 通过学习和分析这个"4分钟倒计时"项目,初学者可以掌握Flash的基本操作,了解...

    flash as 3.0 日历倒计时制作

    flash as 3.0 主要是flash中actionscript脚本语言的练习使用,包括random函数,if else条件判断语句的使用。可以作为案例来提供学生学习flash脚本语言的兴趣。附word版本详细教程及flash源代码。

    FLASH as3 多项计时器

    FLASH as3 多项计时器 用于flash游戏的制作 FLASH as3 多项计时器

    可定制flash倒计时软件v2.1 Beta(带源码)

    3. `Countdown.as` - 倒计时类文件,负责倒计时的计算和更新。 4. `Config.xml` - 可能用于存储用户自定义的设置和参数。 5. `Resources/` - 文件夹,包含了图片、声音等资源文件。 6. `Documentation/` - 文件夹,...

    flash倒计时

    3. **倒计时功能**: 在Flash中实现倒计时,通常需要编写AS3.0代码来控制时间并更新显示。这涉及到使用`Date`类来获取当前时间,计算目标日期与当前日期之间的差距,然后通过`Timer`类来定时更新显示。 4. **Timer类...

    daojishi.rar_ daojishi_Flash daojishi _flash10分钟倒计时制作视频_jishiqi_

    《十分钟倒计时Flash制作详解》 在信息技术领域,Flash是一款经典的动画制作工具,它以其强大的交互性和丰富的视觉效果深受用户喜爱。本文将详细解析如何使用Flash制作一款可自定义的10分钟倒计时器,并对相关技术...

    flash计时as代码

    制作一些简单的flash倒计时,as3脚本,简单明了

    Flash倒计时图片切换

    本知识点主要关注"Flash倒计时图片切换"这一功能,它是一种常见的动态效果,常用于活动预告、限时促销等场景,通过动态显示时间流逝来吸引用户的注意力。 首先,我们要理解“倒计时”的概念。倒计时是指从一个设定...

    AS制作时间计时器PPT学习教案.pptx

    AS制作的广告倒计时可以与服务器时间同步,确保广告展示的准确性和公平性。通过定时更新广告倒计时的文本或图像,可以清晰地呈现剩余时间。 5. 页面跳转倒计时 在网页设计中,有时会需要在一段时间后自动跳转到...

    flash as2.0 制作的钟表源文件

    flash as2.0写的一个简单的钟表,供需要的朋友参考。

    Flash as2.0代码大全与Flash制作技巧

    ### Flash AS2.0代码大全与Flash制作技巧 在Flash AS2.0中,开发者可以利用ActionScript语言来实现各种动态效果和交互功能。本文将详细介绍如何使用Flash AS2.0进行开发,包括加载SWF文件、加载文本数据、处理声音...

    带音效的flash计时器

    使用as2.0制作的flash计时器,可选择正计时或者倒计时,可自己输入计时时间,有结束提示音。

    FLASH入门之计时器制作.rar_flash 计时器_简单计时工具

    总结起来,通过学习和实践这个“FLASH入门之计时器制作”教程,你可以掌握在Flash中创建自定义计时器的基本步骤。计时器功能的应用广泛,不仅可以用于倒计时、计分系统,还可以与各种用户交互结合,提升Flash项目的...

    FLASH+XML 旋转动画效果代码

    - 首先,需要在Flash中创建一个AS3项目,并设置舞台上的对象。 - 然后,编写ActionScript代码来加载XML文件,解析其中的动画参数。 - 解析完成后,根据XML数据设置动画效果,可能涉及到`startTween()`或`...

Global site tag (gtag.js) - Google Analytics