【问题标题】:VideoJS fallback and Internet Explorer 8VideoJS 后备和 Internet Explorer 8
【发布时间】:2012-02-07 23:51:39
【问题描述】:

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

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

皮肤控件应该在所有支持 html5 视频标签的现代浏览器中可见。不过,我的问题是 IE8。回退似乎不起作用,因为我只得到一个黑框,上面写着“电影未加载...”但音频仍在播放。

这是我的标记:

<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 播放器运行良好。谁能帮我解决这个问题?

提前致谢, 乔纳森

【问题讨论】:

  • 我在 IE8 中遇到了类似的问题,正在寻找答案,所以我来到了这里。不过,我可以告诉你的是,如果你的浏览器不支持 &lt;video&gt; 标签,你可以省略 &lt;object&gt; 部分,因为 video-js 会自动为你插入。

标签: flash html html5-video


【解决方案1】:

您可以下载 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/

有效!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-13
    • 1970-01-01
    • 2012-08-27
    • 2010-11-10
    • 2011-03-24
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多