2016-05-11 7 views
0

Ich versuche, Timer-Funktion zu setzen, so dass die Daten aus XML aktualisiert werden, um alle 5 Sekunden zu blinken? Die Verwendung einiger aus dem Internet gefundener Beispiele funktionierte nicht so, als würde es XML-Dateien zwischenspeichern.Actionscript zum Laden von XML-Daten nach Zeit

Hier ist mein Code:

var xmlData:XML = new XML(); 
var theURL_ur:URLRequest = new URLRequest("data.xml"); 
var loader_ul:URLLoader = new URLLoader(theURL_ur); 
loader_ul.addEventListener("complete", fileLoaded); 

function fileLoaded(e:Event):void 
{ 
    xmlData = XML(loader_ul.data); 

    line1.text = xmlData.line1; 
    time1.text = xmlData.time1; 

} 
+1

das Cache Problem zu vermeiden, können Sie so etwas wie dies zum Beispiel verwenden können: 'var theURL_ur: "?" URLRequest = new URLRequest ("data.xml" + + (new Date() .getTime())); '... – akmozo

Antwort

1

Verstanden arbeiten (Morgen ist besser aus der Nacht). Hier ist der Code:

var my_xml_loader:URLLoader; 
var timerRefreshRate:Number = 5000; 
var fatherTime:Timer = new Timer(timerRefreshRate, 0); 
fatherTime.addEventListener(TimerEvent.TIMER, processXML); 
fatherTime.start(); 
processXML(); 

function processXML(event:Event = null):void{ 

    my_xml_loader = new URLLoader(); 
    var cacheBuster:String = "?"+(new Date()).time.toString(); 
    my_xml_loader.load(new URLRequest("your_url"+cacheBuster)) 
    my_xml_loader.addEventListener(Event.COMPLETE, loadvars); 

} 

function loadvars (e:Event = null):void{ 
    var my_xml:XML = new XML(e.target.data); 
    line1.text = my_xml.line1; 
    time1.text = my_xml.time1; 

}