2011-07-22 85 views
0

我正在使用jQuery Mobile創建一個網站,該網站將在其中一個頁面上顯示嵌入的YouTube剪輯。延遲jQuery Mobile轉換以隱藏嵌入的Youtube視頻

我的問題是,當用戶試圖導航到另一個頁面時,嵌入對象在轉換過程中仍然「覆蓋」頁面。結果是視頻在第二頁上出現一瞬間,看起來不太好。

我試過在點擊鏈接時使用.hide(),並嘗試創建超時但無濟於事 - 有人可以推薦解決方案嗎?

回答

0

事實證明我並沒有捕獲正確的事件 - 我被檢查的點擊,當我需要綁定到一個「水龍頭」事件,像這樣:

$("#link").live('tap',function(){ 
    $("#video").hide(); 
}); 
0

您必須從頁面中刪除實際的視頻;這也發生在每個瀏覽器上,因爲Flash通常出現在所有其他內容上。

+0

感謝您的回答,但事實證明.hide()正常工作,請參閱下面的答案。 – Ger

0

您可以使用「pagebeforehide」事件來刪除Flash視頻,但是您也可以使用YouTube的iframe嵌入方法來顯示視頻而不是嵌入標記(我沒有使用iframe方法持久性Flash對象存在問題)。

 
$('#youtube_page_id').live('pagebeforehide', function() { 
    $('#youtube_embed_id').remove(); 
}); 
 
<iframe class="youtube-player" type="text/html" width="640" height="385" src="http://www.youtube.com/embed/VIDEO_ID" frameborder="0"> 

另一個好處是用與YouTube的IFRAME方法是YouTube將檢測到用戶在所述設備和顯示適當的類型的視頻。例如,如果用戶在iPhone上,則YouTube會顯示HTML5視頻而不是Flash視頻。

+0

雖然iframe解決方案確實解決了顯示/隱藏視頻的問題 - 它不如嵌入式閃存對象那麼優雅。例如,視頻不會像閃光燈一樣縮放,還會將視頻標題顯示爲疊加層,這會導致播放器在移動設備上看起來非常擁擠。此外,行爲似乎不穩定 - 有時視頻會立即播放爲html5視頻,而其他時候則會移動移動版YouTube網站。謝謝你的回覆,都一樣:-) – Ger