我正在使用Flash在我的網站上播放.flv動畫片段,但我希望讓.swf在我的JavaScript中發送觸發器事件,當它開始加載,開始播放並結束播放時。如何使flash cs3,actionscript將事件發送到JavaScript?
使用Actionscript 3.0在Flash CS3中做到這一點的最佳方法是什麼?
我正在使用Flash在我的網站上播放.flv動畫片段,但我希望讓.swf在我的JavaScript中發送觸發器事件,當它開始加載,開始播放並結束播放時。如何使flash cs3,actionscript將事件發送到JavaScript?
使用Actionscript 3.0在Flash CS3中做到這一點的最佳方法是什麼?
您需要在HTML中使用「allowScriptAccess」Flash變量。您可能希望使用「sameDomain」作爲類型。請注意,如果你跨域,你還需要在服務器上託管一個名爲'crossdomain.xml'的特殊文件,這個文件可以啓用這樣的腳本(flash player會檢查這個)。更多的信息在http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_14213&sliceId=2
這個調用是。最簡單的部分:-)在Flash代碼,你會使用ExternalInterface做的號召,作爲記錄在這裏:
短版:你說
ExternalInterface.call (「javascriptFunction」,「參數」)
一個常見的方法是使用ExternalInterface類,您可以使用該類調用JavaScript方法。
首先定義你的JavaScript方法,例如:
<script language="JavaScript">
function startsPlaying()
{
// do something when the FLV starts playing
}
</script>
然後修改您的ActionScript調用在適當的時候JavaScript方法:
// inform JavaScript that the FLV has started playing
ExternalInterface.call("startsPlaying");
有關更多信息,請參閱相關的Flash CS3 documentation。
,如果你不希望加載
import flash.external.*;
所以你也可以做一個
getUrl("javascript:startsPlaying();");