`

使用setInterval 制作定时器

阅读更多

setInterval 函数是Action Script 的全局函数,在Action Script 3.0 中它 被封装在 flash.util 包中,详见http://livedocs.macromedia.com/labs/1/flex/langref/migration.html, 它需要flash player 6 或以上版本的支持。

setInterval 有两种用法:
1.  setInterval(functionName:Function, interval:Number [, param1:Object, param2, ..., paramN]) : Number
这种使用方法是让flash player 每隔interval (ms)时间调用functionName()这个函数,不关心这个方法是哪个对象的,后面跟传入的参数;一般来说这些参数值用来为函数提供数据,而不是从函数里取出数据。

2.  setInterval(obj:Object, methodName:Function, interval:Number [, param1:Object, param2, ..., paramN]) : Number
这种方法调用obj 对象中的成员方法methodName,在flex 应用中必须使用这样的方法来实现定时调用的效果。这样的方式就能够,在methodName中就能够访问当前flex application的 成员变量或函数了。举个例子:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application  initialize="initFunc()" xmlns:mx="http://www.macromedia.com/2003/mxml">
 <mx:Script>
 <![CDATA[
  var count:Number;
  function initFunc()
  {
   count = 60;
   setInterval(this, "countDown", 1000);
  }
 
  function countDown()
  {
   showLabel.text = count.toString() + "second to go";
   count -= 1;
   if(count == 0)
    timeUp();
  }
 
  function timeUp()
  {
   alert("Time is up");
  }
 ]]>
 </mx:Script>
 <mx:Label id="showLabel"/>
</mx:Application>

如果这里使用第一种方法的话 就会出现 countDown 函数不能访问到count 和 showLabel 这两个变量,功能就没法实现,虽然可以通过传参数的方法来传入count 和 label:
setInterval(countDown, 1000, count:Number, showLabel:mx.controls.Label);
但是这样话 count-=1 并不起作用,所以根本不会count down。这个搞了我好久,开始没有看到第二种用法,大家要留意。

好看一点的例子:

 function init()
 {
  var spanSec:Number=60*60 //an hour to go
  var nf:mx.formatter.NumberFormatter = new mx.formatters.NumberFormatter();
  nf.precision = 0;
  nf.rounding = "down";
 }

 function timeCountDown()
 {
  var hr:Number =parseInt(nf.format(spanSec/3600));
  var min:Number = parseInt(nf.format((spanSec - hr*3600)/60));
  var sec:Number = parseInt(nf.format(spanSec - 60*min - hr*3600));
  spanSec = spanSec - 1;
  countDownLabel.text="Time left: "+hr+":"+min+":"+sec;
  if(spanSec == 0)
  {
   submit();
  }
 
 }

 function submit()
 {
    //do whatever you want
 }

 

0
0
分享到:
评论

相关推荐

    自己制作的多功能定时器

    定时器通常是通过编程语言中的时间函数来实现,例如在Python中可以使用`time.sleep()`或`datetime`模块,JavaScript中则有`setTimeout()`和`setInterval()`等。这些函数能够设定一个特定的时间间隔,到达该间隔后...

    C#制作的定时器

    在这个“C#制作的定时器”项目中,我们有两个关键的类:一个用于处理时间事件,另一个用于定义时间间隔。下面将详细探讨这两个类以及C#中的定时器机制。 首先,让我们来理解一下C#中的定时器类型。C#中有两种主要的...

    js制作绚丽定时器

    接下来,我们需要一个定时器函数,通常使用`setInterval()`函数来实现。这个函数接收两个参数:一个要执行的函数和执行间隔(以毫秒为单位)。例如,如果我们希望每秒钟更新一次计时器,可以设置`setInterval(update...

    VC制作定时器程序代码

    在本文中,我们将深入探讨如何使用Microsoft Visual C++(简称VC++)开发一个简单的定时器程序,该程序能够在对话框中实时显示倒计时和日期时间。首先,我们需要理解VC++的基本环境,然后逐步构建这个功能。 VC++是...

    JavaScript定时器范例2则

    学习和理解JavaScript定时器是非常关键的,它们在网页动态效果、动画制作、轮询服务等方面都有广泛的应用。通过熟练掌握`setTimeout`和`setInterval`,开发者可以为用户创建更丰富的交互体验。 这两个简单的范例是...

    setInterval全面的介绍

    3. **清除定时器**:为了防止内存泄漏等问题,当不再需要继续执行定时任务时,应该及时使用`clearInterval`函数来清除对应的定时器。例如: ```javascript var timerId = setInterval(function() {}, 1000); // 在...

    利用javascript通过定时函数setInterval制作小人走动的动画.zip

    制作关键帧动画: 通过定时器,定时改变div中的img的left属性值,img是定位在div中的,每次改变的值为120px,建议100毫秒改变一次,时间间隔还可以更长一点,通过调整设置最佳的时间间隔。

    微信小程序—setTimeOut定时器的问题及解决

    在微信小程序开发中,经常会遇到使用定时器的问题。本文主要探讨了`setTimeOut`定时器在微信小程序中的应用和一些常见问题。`setTimeOut`是JavaScript中的一个基础功能,用于在指定的延迟时间后执行某段代码,这对于...

    JavaScript定时器制作弹窗小广告

    在这个案例中,我们利用JavaScript定时器来制作一个弹窗小广告,使得广告在特定时间间隔后自动显示。 首先,我们需要了解JavaScript中的两个定时器函数:`setTimeout()` 和 `setInterval()`。`setTimeout()` 用于在...

    Java Script中setinterval怎么用?怎么才能让setinterval停下来?.pdf

    这对于实现定时器、动画等效果非常关键。 #### 基本语法 `setInterval`的基本语法如下: ```javascript var intervalID = setInterval(function, delay, [param1, param2, ...]); ``` - **function**:一个将被...

    前端学习笔记,做一个简单的网站-定时器,学习代码

    在制作定时器网站时,`&lt;button&gt;`元素特别关键,因为它将作为启动和停止定时器的触发器。 接着,JavaScript(JS)是赋予网页动态功能的脚本语言,这里主要负责定时器的逻辑处理。在JavaScript中,你可以使用`...

    jQuery翻转倒计时定时器插件

    JavaScript的`setInterval`函数通常用于创建定时器,每间隔一定时间执行一次任务。 5. **相关文件**: - `jquery.flipcountdown.css`: 存放插件的样式,定义了数字翻转的效果、颜色、大小等视觉样式。 - `....

    幻灯片使用js制作的

    3. **自动切换**:为了实现幻灯片的自动切换效果,我们需要设置一个定时器(如`setInterval`函数),在指定的时间间隔后改变当前显示的幻灯片。这个时间间隔可以根据需求进行调整,以实现平滑的过渡效果。 4. **...

    JavaScript定时器常见用法实例分析

    3. **定时器制作时钟**:定时更新当前时间并显示在页面上,例子中使用了`setInterval`每秒更新一次时间。 4. **定时器制作倒计时**:计算并显示到特定日期的剩余时间,这在活动倒计时或者考试倒计时等场景中很有用。...

    JavaScript定时器设置、使用与倒计时案例详解

    JavaScript定时器的用途广泛,例如,可以用于制作页面动画、定时检查事件、控制元素出现和隐藏的时间等。在使用定时器时,需要注意定时器的管理,避免过多定时器未被清除导致的内存泄漏问题。此外,浏览器在标签页不...

    javascript中setInterval的用法

    setInterval是实现定时任务的重要工具,在开发动态网页时经常会用到,例如制作轮播图、倒计时、实时数据更新等场景。 setInterval函数的语法格式主要有两种:一种是使用普通函数作为参数的写法,另一种是使用对象的...

    jQuery基础的工厂函数以及定时器的经典实例分析_.docx

    ### jQuery基础的工厂函数以及定时器的经典实例分析 #### 一、jQuery简介 **1.1 定义:** ...以上示例涵盖了jQuery的基础概念、常见应用以及定时器的经典使用场景,希望能帮助读者更好地理解和运用jQuery。

Global site tag (gtag.js) - Google Analytics