2012-02-13 99 views
1

是否有可能在Flash中使用Javascript。例如,作爲一個簡單的測試,我嘗試在單擊按鈕時使用Javascript的alert方法。Javascript和Flash在AS3

我正在使用AS3。可能嗎?

+1

不要這麼想......如果我沒有記錯的話,在flash中使用actionscript – 2012-02-13 23:14:34

回答

2

像Marty提到的那樣,您可以使用ExternalInterface類來執行Javascript。您的選擇是執行嵌入(html)頁面代碼中的函數並從頭開始創建一個函數。因爲alert是默認函數,所以可以將其名稱用作call方法(的第一個參數)(ExternalInterface),並將字符串作爲第二個參數。

如果你提供了一個參數,你可能想寫一個函數來執行(或返回)一些東西。

btn.addEventListener(MouseEvent.CLICK, btnClicked); 
function btnClicked(e:MouseEvent):void { 
    ExternalInterface.call("alert","something"); 
    // or 
    ExternalInterface.call("function(){alert('something');}"); 
} 
1

號。Flash使用ActionScript 3的

您可以撥打同一個頁面使用ActionScript的ExternalInterface類嵌入式SWF的JavaScript函數,雖然。

一個快速演示在實施ExternalInterface

if(ExternalInterface.available) 
    ExternalInterface.call("alert", "Hello!"); 

提示:除非你在this security settings panel添加項目的位置,並選中「總是允許」 ExternalInterface調用不會在本地工作。