Flash Fallback在Windows XP SP2上无法使用IE7

时间:2011-11-14 19:26:23

标签: mediaelement.js

我一直在使用MediaElement.JS测试一个网站,到目前为止给我留下了非常深刻的印象。我在Mac上测试了FF和Safari上的Flash后备支持。我还在Windows 7上使用IE9和谷歌Chrome进行了测试。一切正常,如果编解码器无法加载,则使用我在Flash播放器上播放的mp4版本。

但是,在IE7中测试后,Flash播放器无法加载。我甚至没有看到视频的任何控件,右键单击元素我没有得到标准的Flash设置菜单。然而它确实有一个黑框,元素应该出现(而且它不是我的造型)。

这是我的视频元素块,支持Flash后备:

<video id="video-tag" width="640" height="360" poster="war-torn.png" controls="controls" preload="none">
    <!-- MP4 for Safari, IE9, iPhone, iPad, Android, and Windows Phone 7 -->
    <source id="source-mp4" type="video/mp4" src="war-torn.mp4" />
    <!-- WebM/VP8 for Firefox4, Opera, and Chrome -->
    <!-- Flash fallback for non-HTML5 browsers without JavaScript -->
    <object width="320" height="240" type="application/x-shockwave-flash" data="flashmediaelement.swf">
        <param name="movie" value="flashmediaelement.swf" />
        <param name="flashvars" value="controls=true&poster=war-torn.png&file=war-torn.mp4" />
        <!-- Image as a last resort -->
        <img src="war-torn.png" width="320" height="240" title="No video playback capabilities" />
    </object>
</video>

我正在我的页面中进一步实现MediaElement.JS,如下所示:

<script src="../build/mediaelement-and-player.min.js"></script>
<script>
$("#video-tag").mediaelementplayer({
  features: ['playpause','progress','current','volume']
});
</script>

我不确定发生了什么,因为如果我删除了WebM的标签,而FF使用Flash后备,它可以很好地工作。如果有人有任何见解,将不胜感激。谢谢!

我也收到此错误消息:

  

'0.url'为null或不是对象

     

的MediaElement和 - player.min.js

     

代码:0

     

URI: url to js file

     

行:41

     

Char:4

它在IE7兼容模式下也不起作用。

1 个答案:

答案 0 :(得分:3)

我能够通过做两件事来解决问题。首先,我将mediaelement-and-player.min.js脚本标记移到了头部,接下来,我在视频标记的html之后移动了.mediaelementplayer()调用。

这似乎解决了这个问题。怪异。