2015-06-25 159 views
0

我的網頁上有一個自動播放的Flash播放器。問題是視頻在頁面上的其他內容加載之前開始播放。我想等待直到網頁加載或最多2秒後等待頁面加載或等待X秒前加載播放器

<object id="flowplayer" width="640" height="360" data="/flowplayer-3.2.18.swf" type="application/x-shockwave-flash"> 

     <param name="allowfullscreen" value="true" /> 
     <param name="wmode" value="transparent" /> 
     <param name="flashvars" value='config={"clip":"URL goes here", "plugins": {"controls": {"autoHide" : false} }}' /> 

回答

1

首先,我認爲禁用流水遊戲的autoplay可能是避免問題的最簡單方法。對於autoplay選項,請看here

如果你想一直使用JavaScript加載一段時間後,你的Flash內容,就可以使用,因爲你已經提到的,display:none這樣的:

CSS:

<style> 
    #flowplayer { 
     display: none; 
    } 
</style> 

而且然後,對JavaScript,當頁面加載:

window.addEventListener('load', function() {  
    document.getElementById('flowplayer').style.display = 'block';  
}, false); 

或者使用jQuery:

jQuery(window).load(function() {  
    document.getElementById('flowplayer').style.display = 'block';  
}); 

,並使用超時:

var timeout = setTimeout(function(){ 
    document.getElementById('flowplayer').style.display = 'block'; 
    clearTimeout(timeout); 
}, 2000); 

希望能有所幫助。

+0

...感謝您的幫助。我希望自動播放視頻,但自動播放應等待頁面完全加載。如果頁面在2秒後未完全加載,請繼續開始自動播放 – user2650277

+0

@ user2650277我編輯了我的答案,看看。 – akmozo

0

也許你可以使用$(document).ready()功能(https://learn.jquery.com/using-jquery-core/document-ready/),如果它不能幫助 - 您可以用setTimeout()一段時間後,用插入JS/JQuery的閃存代碼,我希望它能起作用。

+0

你能舉個例子嗎我可以加一個style =「display:none;」到對象標籤。然後當頁面加載或2秒鐘之後刪除它。 – user2650277

+0

我不確定「display-none會阻止flash被加載,但你可以嘗試。你需要什麼樣的例子? – TamarG

+0

然後我需要嘗試另一種方法。你推薦的是什麼。我正在尋找JS only方法 – user2650277