專案需求:Flash 前端從 .NET 後端載入 XML 取得基準參與人數,並以隨機數模擬動態增減效果,展示即時參與狀態。
<?xml version="1.0" encoding="utf-8"?>
<project>
<joins>
<nums>20</nums>
</joins>
</project>
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.text.TextField;
import flash.utils.Timer;
import flash.events.TimerEvent;
var myxml:XML;
var url:String = "https://localhost:25212/test.xml";
var req:URLRequest = new URLRequest(url);
var loader:URLLoader = new URLLoader(req);
var lab:TextField = new TextField();
var timer:Timer = new Timer(1000); // 每秒觸發
var joinScale:int;
loader.addEventListener(Event.COMPLETE, onComplete);
function onComplete(e:Event):void {
myxml = new XML(loader.data);
joinScale = myxml.joins.nums; // 取得基準值
var output:String = "當前參與數有: " + joinScale;
trace(output);
lab.text = output;
lab.width = 200;
lab.x = 100;
lab.y = 100;
addChild(lab);
timer.addEventListener(TimerEvent.TIMER, setText);
timer.start();
}
function setText(e:TimerEvent):void {
// 隨機波動:-3 到 +7 之間
joinScale = joinScale + (10 * Math.random()) - 3;
lab.text = "當前參與數有: " + joinScale;
}
| 類別/方法 | 用途 |
|---|---|
URLLoader |
載入網路資源 (XML、JSON、文字等) |
URLRequest |
封裝請求 URL、方法、Header、資料 |
Event.COMPLETE |
資料載入完成事件 |
XML 類別 |
E4X 標準解析 XML,支援點語法存取節點 |
Timer |
定時觸發模擬動態變化 |
文字欄位每秒更新,數值在基準值附近隨機波動,視覺上呈現「即時參與人數動態變化」效果。
crossdomain.xml 允許 Flash 跨域存取。AS3 透過 URLLoader 載入 XML、XML 類別解析、Timer 定時更新 UI,輕鬆實現「載入基準資料 + 前端動態模擬」的互動效果,適合儀表板、活動頁等展示場景。