rof*_*fle 5 video firefox swfobject flash-video html5-video
我正在使用VideoJS和SWFObject来嵌入视频.我们的想法是VideoJS将尝试使用HTML5视频标记,如果不支持,它将在Flash上回退.我正在尝试使用SWFObject嵌入Flash作为后备.这是相关的代码:
<ul id="client_gallery">
<% if PortfolioMedia %>
<% control PortfolioMedia %>
<% if VideoFile %>
<li style="width:{$VideoWidth}px;height:{$VideoHeight}px">
<div class="video-js-box">
<video class="video-js" width="$VideoWidth" height="$VideoHeight" controls preload>
<source src="$VideoFile.URL" type="video/mp4" />
<div id="flash_player"></div>
<script type="text/javascript">
var flashvars = {
'file': "$VideoFile.URL"
};
var params = {
'allowfullscreen': "true",
"wmode": "transparent"
};
var attr = {
'id': 'f_player',
'name': 'f_player'
};
swfobject.embedSWF('/portfolio/javascript/jwplayer/player.swf', 'flash_player', '$VideoWidth', '$VideoHeight', '9', '', flashvars, params, attr, function(e){
});
</script>
</video>
</div>
</li>
<% end_if %>
<% end_control %>
<% end_if %>
<script type="text/javascript">
$(function(){
VideoJS.setupAllWhenReady();
});
</script>
</ul>
Run Code Online (Sandbox Code Playgroud)
另一种表示法来自CMS Silverstripe,这与此问题无关.这适用于Chrome,Safari和IE,但不适用于Firefox.在Firefox中,我得到的是一个空容器,好像它试图使用<video>标签但无法加载兼容的源.
它根本不是嵌入Flash,我知道swfobject代码正在工作,因为如果我只使用swfobject代码,而不是在<video>标签内,它可以很好地工作.所以问题是:VideoJS不会回退到swfobject嵌入的代码.但为什么?
videojs 已经内置了 Flash 支持作为后备。如果您想使用自己的 Flash 播放器,您可以在选项中更改它,例如:
<script type="text/javascript">
VideoJS.options.flash.swf = "pathtoyourplayer.swf";
VideoJS.options.flash.flashVars = {youroptions};
VideoJS.options.flash.params = {youtparams};
VideoJS.options.flash.attributes = {yourattributes};
</script>
..
<video ...>
<source src=".." type="video/mp4" />
</video>
Run Code Online (Sandbox Code Playgroud)
附加:swfObject 已经包含在 videojs 中。
| 归档时间: |
|
| 查看次数: |
2772 次 |
| 最近记录: |