2012-07-02 50 views
0

我目前正在製作的網站在轉盤上有一系列視頻(共6個)。正如你所猜測的那樣,這給我們帶來了一些令人頭疼的性能問題,特別是關於Flash視頻版本。使用Javascript切換Flash

爲了幫助CPU使用率,我開始在視頻中調用.hide()(我們使用jQuery),因爲它們離開了輪播的焦點。這對CPU本身幫助很大。

問題是,每次我在對象元素上調用.show()時,我都會注意到Fiddler中視頻源的XHR。我相信這個新資源每次都會被添加到內存中,因爲我看到內存泄漏。我也嘗試刪除/重新創建元素,但是我經歷了與隱藏和顯示視頻相同類型的內存泄漏。

我也研究過用ActionScript編寫Javascript鉤子到flash文件,但是我沒有那種環境設置,所以我正在尋找一些嚴格的javascript。

有沒有一種有效的方法來暫停/播放視頻?

感謝您的時間。

回答

1

不幸的是,沒有辦法告訴Flash視頻停止使用純粹的Javascript解決方案。如果您有權訪問Actionscript源代碼,則可以偵聽ExternalInterface回調並處理暫停代碼。

至於通過Javascript銷燬和重新創建Flash對象,如果您使用SWFObject,則可以嘗試removeSWF方法。它會從源代碼中刪除整個對象標籤,但我不確定瀏覽器中的內存管理器是什麼樣的。您可能會遇到與以前一樣的內存泄漏情況。

我的建議是嘗試訪問Flash源代碼或編寫自己的代碼,以便您可以正確處理暫停和恢復功能。