VideoJS后备和Internet Explorer 8

时间:2012-01-11 16:00:49

标签: flash html5 html5-video

我刚刚通过ffmpeg编写了一个带有自动转换功能的跨浏览器视频播放器,它在所有浏览器中运行良好。由于它们都显示不同的控件,我认为我会使用VideoJS来设置它们的样式。

这是我的演示页面: http://www.animero.com/2012/produktioner/jakobsson-pr-vegibar/

在支持html5视频标记的所有现代浏览器中都应显示蒙皮控件。虽然,我的问题是IE8。后备似乎不起作用,因为我只得到一个黑色的盒子,上面写着“Movie not loaded ...”但是音频仍在播放。

这是我的标记:

<div class="video-js-box">
    <video id="my_video_1" class="video-js vjs-default-skin" width="790" height="444" poster="<?php echo $videoFiles['poster']; ?>" preload autoplay controls data-setup="{}">
        <source src="<?php echo $videoFiles['mp4']; ?>" type="video/mp4" />
        <source src="<?php echo $videoFiles['ogv']; ?>" type="video/ogg" />
        <object id="flash_fallback_1" class="vjs-flash-fallback" width="790" height="444">
            <embed width="790" height="444" src="<?php bloginfo('stylesheet_directory'); ?>/spelare.swf?image=<?php echo $videoFiles['poster']; ?>&video=<?php echo $videoFiles['flash']; ?>" type="application/x-shockwave-flash" wmode="transparent"></embed>
        </object>
    </video>
</div>

当我关闭VideoJS时,一切都很棒,而在IE8中,我的flash播放器效果很好。有人可以帮我这个吗?

提前致谢, 乔纳森

1 个答案:

答案 0 :(得分:2)

您可以下载Video.js源并将其托管在您自己的服务器上,或使用免费的CDN托管版本。现在经常建议将JavaScript放在end body标签()而不是head()之前,但Video.js包含一个'HTML5 Shiv',它需要在较旧的IE版本的头部,以尊重视频标签有效的元素。

注意:如果您已经在使用像Modernizr这样的HTML5 shiv,您可以在任何地方添加Video.js JavaScript,但请确保您的Modernizr版本包含视频shiv。

来源:http://videojs.com/docs/setup/

有效!