RangeError 2066,XML和AS3

时间:2010-03-24 20:25:28

标签: xml flash actionscript-3

我正在使用XML和Flash。我试图将XML值传递给我的计时器并获得范围错误。我该如何解决这个问题?

我的错误
RangeError:错误#2066:指定的定时器延迟超出范围     在错误$ / throwError()
    在flash.utils :: Timer()
    在svrReadyXML_fla :: MainTimeline / frame1()

我的SWF '接收定时器功能的XML'

import flash.display.Sprite; 
import flash.events.Event; 
import flash.utils.Timer; 
import flash.events.TimerEvent; 

var timer:Timer; 
timer = new Timer( speed );
var speed:Number = Number( myXML.TIMER.text() );
var fcount:int = 0;
var count:int = 0;

timer = new Timer(speed); 
//timer.addEventListener(TimerEvent.TIMER, incrementCounter);     
timer.start();

//LOAD XML
var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("time.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);

//PARSE XML
function processXML(e:Event):void {
myXML = new XML(e.target.data);
trace(myXML.COUNT.text()); 
trace(myXML.FCOUNT.text()); 
trace(myXML.TIMER.text()); 
}

1 个答案:

答案 0 :(得分:0)

您在加载XML文件之前尝试读取myXML.TIMER值。它可能返回null,这会导致您的问题。 尝试在processXML功能中初始化您的计时器。

function processXML(e:Event):void {
myXML = new XML(e.target.data);
timer = new Timer( Number(myXML.TIMER.text()) );
timer.start();
}