我需要創建一個啓動頁面類型的東西。它需要播放Flash影片,然後在該影片完成後使用html/js顯示全屏圖像。電影將閃光,圖像顯示將以JavaScript爲動力。如何檢測Flash影片已完成使用JavaScript/jquery播放,然後運行功能
我不知道如何在一頁上做到這一點。任何幫助將是驚人的。
謝謝您的閱讀。
我需要創建一個啓動頁面類型的東西。它需要播放Flash影片,然後在該影片完成後使用html/js顯示全屏圖像。電影將閃光,圖像顯示將以JavaScript爲動力。如何檢測Flash影片已完成使用JavaScript/jquery播放,然後運行功能
我不知道如何在一頁上做到這一點。任何幫助將是驚人的。
謝謝您的閱讀。
你會想要使用ExternalInterface。例如:
try {
ExternalInterface.call("myfunction");
} catch(e:Error) {
trace(e)
}
根據您的Flash影片是如何構建的,當動畫到達最後一幀,運行ExternalInterface.call(「myfunction的」);將在JavaScript中調用一個名爲「myfunction」的函數。例如:
<script type="text/javascript">
function myfunction()
{
alert("hello!"); // replace with some jquery
}
</script>
我真的不能說,如何把它變成你的電影,因爲我不知道,如果你的電影是使用ActionScript動畫,或時間軸動畫建造,或者你想播放Flash視頻。 (如果您使用的是視頻,您可以附加Event.COMPLETE的事件偵聽器,並在其中執行您的c)。如果它的動畫動畫,你需要找到補間或其他東西的結尾。 用try/catch包裝它就是爲了安全。您需要確保在嵌入swf時,您有allowScriptAccess = always或sameDomain。 Reference here
可能有更好的方法來做到這一點,但在Flash影片中,您可以使用ExternalInterface來調用JavaScript函數。所以,你可以設置一個actionscript函數在電影結束時運行,並且可以調用一個javascript函數來完成你需要做的任何事情。
- 免責聲明 - 我沒有現金升級我的Flash,所以我仍然使用actionscript 2.我提到的對象現在可能會被棄用 - 但它仍然可以工作。
是通過在電影內添加內容來完成此操作的唯一方法?我只有.swf :( 我想我總是可以讓jquery在5秒鐘後觸發某個函數,但至少可以說這是一個糟糕的解決方案! 感謝您的回答! – bjohnb 2011-01-11 22:56:44