2009-11-25 41 views
0

我做了一個空的AS 3的FLV文件,有1位這個動作一個關鍵幀:有人可以讓這個ActionScript工作嗎?

on(load) 

{ 

    var req:LoadVars = new LoadVars();  
    req.x = "y"; 
    req.load("http://localhost/file.php");  
    req.onData = function(src:String) { 
     req.x = src; 
     req.send("http://localhost/send.php", "_self", "POST"); 
     }; 
} 

我收到了許多錯誤,比如上(負載)是無效的。我試圖在電影開始時運行代碼。

+0

因爲它不是AS3,所以出現錯誤:我不確定'on(load)'是AS1還是AS2,但絕對不是AS3 – Amarghosh 2009-11-25 17:25:21

+0

並且您正在從它的'onData'發送req - 'onData '只有在您發送並從服務器收到迴應後纔會觸發。 – Amarghosh 2009-11-25 17:26:19

回答

4

此代碼是AS2,而不是AS3。 on(load)在AS3中已過時。在AS3中,您應該使用類似這樣的內容:

import flash.net.*; 
import flash.events.*; 

var loader:URLLoader; 
var request:URLRequest; 

function loadVars():void 
{ 
    request = new URLRequest('your_url.php'); 

    loader = new URLLoader(); 
    loader.addEventListener(Event.COMPLETE, onComplete, false, 0, true); 
    loader.addEventListener(IOErrorEvent.IO_ERROR, onIOError, false, 0, true); 
    loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecError); 
    loader.load(request); 
} 

function onComplete(e:Event):void 
{ 
    trace("data", e.target.data); 
} 

function onIOError(e:IOErrorEvent):void 
{ 
    trace("IO ERROR", e.text); 
} 
function onSecError(e:SecurityErrorEvent):void 
{ 
    trace("Security ERROR", e.text); 
} 

此代碼未經測試。閱讀Adobe的在線ActionScript 3文檔以獲得更多幫助!

相關問題