2015-06-25 127 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