`

使用flex制作倒计时

    博客分类:
  • flex
阅读更多

因为09年1月17号我要考雅思,每天都惦记着还有多少天到。于是想做个flex的倒计时来提示自己时间在流逝。

制作第一步是算法。

使用timer控件来做定时器,每秒计算一次。具体算法为

   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){
    minusMonth;
   }else{
    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--;
   }

这个算法的优点是1、年月日各自为政。 2、从秒算起,为负数就向上减一,理解起来和书写起来都很方便滴哦。

 

第二步是将算法封装到控件,这里我使用的是<mx:Label>

需要强调的是,label换行是个弊端。但它的htmlText属性可以优化界面。

 

第三步是在应用界面调用封装好的label控件。为了将来计算其他倒计时,我提供了日期选择界面。

 

以下是我的完整源代码 欢迎切磋 erichan1979@gmail.com

 

 

 

分享到:
评论

相关推荐

    Flex4倒计时源码(带声音)

    一个很不错的Flex倒计时源码 技术要点TextInput组件的restrict属性应用如(0-9)意味着用户只能输入数字,还有那个倒计时的算法,同时可播放声音

    flex(flash)倒计时软件

    在本例中,我们讨论的是一个使用Flex制作的倒计时软件,该软件提供了灵活的时间间隔调整功能,并允许用户替换声音文件以适应不同需求。 首先,让我们深入了解Flex的核心组成部分: 1. **ActionScript**:Flex的...

    Flex万年历记事本_flex源码

    "Flex万年历记事本"是一个使用Flex技术实现的项目,它结合了日历功能和记事本特性,为用户提供了一种方便的方式来管理和记录日常生活中的事务。 在Flex源码中,我们可以期待看到以下几个关键知识点: 1. **MXML与...

    九宫格图片随机变换位置+倒计时(选对停止倒计时)

    综上所述,"九宫格图片随机变换位置+倒计时(选对停止倒计时)"这个项目涵盖了前端开发的多个方面,包括UI设计、JavaScript编程、定时器使用、用户交互逻辑以及状态管理,对开发者的技术综合能力有较高要求。

    js,css倒计时样式

    本示例将深入探讨如何使用JavaScript(js)和层叠样式表(css)来创建具有吸引力的倒计时样式。 首先,JavaScript是前端开发中的动态语言,负责处理页面的交互逻辑。在倒计时应用中,我们可以使用`Date`对象来获取...

    PPT倒计时提醒器,答辩、会议提醒计时

    3.软件提供正计时与倒计时两种功能,可以设置倒计时时间~!在最后10秒会有声音提醒,结束声音提醒!界面可自由拖动! 4.系统采用Flex4开发,供交流学习使用,未经本人允许,请勿传播~! 5.联系方式:qq:471832030 e-...

    PPT倒计时器TimerSystem,会议计时提醒!

    【TimerSystem】是一款基于FLEX4技术开发的PPT倒计时工具,专为会议演讲者设计,以提供精准的时间管理服务。这款软件的核心功能是为演讲者在PowerPoint演示过程中提供实时的计时提醒,确保他们能按照预定的时间表...

    记事万年历flex源码

    通过深入分析这些文件,开发者可以学习到如何使用Flex来构建一个功能齐全且具有视觉吸引力的日历应用。 综上所述,"记事万年历flex源码"是一个展示Flex技术在构建富互联网应用中的实际应用的例子,它融合了UI设计、...

    flex写的安卓计时器,可以设定时间

    在本场景中,"flex写的安卓计时器"指的是使用Flex技术开发的一个Android应用,该应用包含一个计时器功能,允许用户设定并显示倒计时。 计时器是软件中常见的组件,它能够追踪时间流逝或执行特定任务。在Android平台...

    组件实现倒计时,自动闪烁

    Flex 利用Linkbutton实现的倒计时功能,时间可现实在页面中摸你倒计时,当时间结束后,会自动渲染其组件

    网站上线倒计时模板

    下面将详细介绍如何使用HTML、CSS和JavaScript来构建一个网站上线倒计时模板。 首先,HTML(HyperText Markup Language)是网页的基础结构语言,我们需要在HTML文件中创建一个容器来展示倒计时。例如: ```html &lt;!...

    Js+CSS完成漂亮的网页倒计时效果

    1. 使用`display: flex`或`grid`布局进行元素对齐,使倒计时组件看起来更加规整。 2. 利用`transition`和`keyframes`实现动态效果,如数字变化时的平滑过渡。 3. 自定义字体和颜色,增加视觉吸引力。 4. 使用`...

    js倒计时代码带css页面

    本篇文章将详细探讨如何使用JavaScript和CSS实现一个倒计时计时器。 首先,我们需要了解JavaScript中的Date对象。Date对象是JavaScript内置的,用于处理日期和时间。在倒计时中,我们需要两个重要的日期:当前日期...

    js+css+div,超仿常来买商城倒计时源码

    在本文中,我们将深入探讨如何使用JavaScript(JS)、CSS(层叠样式表)以及HTML的div元素来创建一个超仿常来买商城的倒计时功能。倒计时是网页中常见的一种动态效果,通常用于预告活动开始、产品上线等场景,能够...

    flex简单时钟制作(flex学习)

    在本文中,我们将深入探讨如何使用Adobe Flex技术创建一个简单的时钟应用。Flex是一种基于ActionScript 3(AS3)的开源框架,主要用于构建富互联网应用程序(RIA)。它提供了丰富的用户界面组件和强大的数据绑定机制...

    css3倒计时效果

    在CSS3中,倒计时效果可以通过结合使用定时器(timers)、伪元素、数据属性以及JavaScript来实现。这个效果通常用于网站上的促销活动、竞赛结束或者重要事件来临的提示。下面将详细介绍如何使用CSS3创建倒计时效果。...

    flexsorte手机商城flex制作

    总结来说,"flexsorte手机商城flex制作"是一个使用Adobe Flex技术开发的移动应用项目,涉及到用户界面设计、数据绑定、事件处理、服务集成、性能优化和多平台适配等多个方面,而"flexstore"可能包含了该项目的全部源...

    Flex图表制作Flex图表制作

    Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表制作Flex图表...

    Flex 计时器源码 timer

    ### Flex计时器源码详解:实现方法定时执行与事件触发操作 在Flex框架中,计时器(Timer)类是实现周期性任务调度的重要工具之一。本文将深入解析一个简单的Flex计时器示例代码,并详细介绍其工作原理、应用场景...

Global site tag (gtag.js) - Google Analytics