2010-08-26 60 views
1

我有一個swf,在colorbox窗口中打開。當視頻播放完畢後,我通過一個javascript函數的外部接口調用關閉了colorbox。通過顏色框內的AS3外部接口調用javascript

我試圖執行以下AS3代碼:

ExternalInterface.call('parent.$.fn.colorbox.close()')

我似乎無法得到這個工作。彩盒不會關閉。

我也試過這個,看看我只是做了錯誤的函數調用,但這並沒有工作,要麼: ExternalInterface.call('alert("hello world")')

但是,如果我瀏覽到SWF文件的URL,這樣它不在colorbox內打開,alert()調用工作得很好。

回答

2

試試這個:

ExternalInterface.call('parent.$.fn.colorbox.close'); 

而且這樣的:

ExternalInterface.call('alert','hello world'); 

或者,你可以調用eval,並通過JS代碼作爲一個String(你不需要這個在這裏,但它很方便一些案例)。

ExternalInterface.call('eval','parent.$.fn.colorbox.close()') 
+0

這沒有奏效。 – Adam 2010-08-26 21:22:53

+0

@ user362871。也許你的嵌入代碼拒絕你的swf訪問JS ...你能粘貼你的嵌入代碼嗎? – 2010-08-27 00:47:44

+0

我沒有嵌入它。我正在使用colorbox直接加載swf。將嘗試將它嵌入到HTML頁面並用colorbox調用它。 – Adam 2010-08-27 17:30:33