jmediaelement:没有 jwplayer 后备 IE8
Posted
技术标签:
【中文标题】jmediaelement:没有 jwplayer 后备 IE8【英文标题】:jmediaelement: no jwplayer fallback IE8 【发布时间】:2011-07-21 21:51:52 【问题描述】:我正在使用 jmediaelement 为视频提供 jquery-ui 样式的控件。当内容位于 jquery ui 对话框中时,适用于所有浏览器,包括 jplayer fallback、Firefox 和 IE9 以及 IE8。但是由于某些原因,在使用 IE8 加载页面时,jplayer swf 对象甚至没有注入到页面中......
这是页面中的标记:
<div class="media-player large" style="width:600px;height:490px;">
<video poster="http://pathfinder.remote-learner.net/theme/prepworks_formfactor/media/prepworks_logo_poster.png" preload="auto" controls="controls" >
<source type="video/mp4" src="http://pathfinder.remote-learner.net/theme/prepworks_formfactor/media/InteractiveMath1e.mp4"></source>
<a href="http://pathfinder.remote-learner.net/theme/prepworks_formfactor/media/InteractiveMath1e.mp4">Vid for ipad safari</a>
</video>
</div>
我正在页脚中加载 jQuery、jquery ui、jmediaelement 的 mm.full.min.js 和 jmeEmbedControls.js。 player.swf 在同一目录中可用。在随后的脚本中,我在页面中的任何视频元素上调用 embedControls:
jQuery('div.media-player').jmeEmbedControls(
mediaControls: dynamicTimeslider: false,timeSliderAdjust: -1,
embed:
jwPlayer: // Set the path for the player.swf file (depends on a var called jsThemeDir being printed into the <head> from /layouts/general.php
path: jsThemeDir + 'javascript/player.swf',
plugins: jmefs: jsThemeDir + 'javascript/jmefs.swf'
);
我什至不知道在这里尝试什么。我尝试添加 jme 的调试 js 文件,但在 IE8 中没有任何用处。在 FF 中加载它只会在控制台中打印“一切看起来都不错”。当我从控制台调用 jmeEmbedControls() 时,它只是在原始控件下方添加了另一组无样式控件。没有jwplayer。没有样式。
更奇怪的是,当我将在页面中不起作用的相同标记放入 jquery ui dialog()、初始化模式对话框并对 jmeEmbedControls 进行相同调用时,对话框内的视频将使用 jwplayer 和播放(css 有点偏离,但播放正常)。
我错过了什么?我应该寻找什么?为什么原始页面加载中的代码不使用 jwplayer 蒙皮,而在 jQuery().dialog() 中呈现的代码然后得到正确的 jwplayer 函数? (我知道本地安全沙箱问题,并已将 localhost 添加到我的受信任站点。此外,http live 站点上的同样问题。)
【问题讨论】:
【参考方案1】:我修好了 [grumble grumble]。只需要添加一个 $(document).ready()。对于 swf 后备,似乎比支持 html5 的浏览器更重要。
【讨论】:
以上是关于jmediaelement:没有 jwplayer 后备 IE8的主要内容,如果未能解决你的问题,请参考以下文章