我最近遇到了同樣的問題,就像你在一個項目上做的那樣。就我而言,fancybox在模態窗口中正確加載了mediaelement播放器。但是,在IE8上,Flash Player已經呈現,您可以看到控件被剝離並永遠不會被替換。
看了一下插件後,看起來mediaelement會偵聽flash播放器觸發的事件,以初始化播放器的控件。根據多種情況,我發現玩家在插件被調用之前發出了該事件,這意味着插件從未確定玩家準備好了。
對我來說,修正是明確地將flashName選項設置爲swf的路徑。然後,我只是從我的源代碼中刪除了對象標記,允許插件創建它。
路徑明確設置爲SWF:
<script>
$(document).ready(function(){
$('video').mediaelementplayer({
flashName: '/path_to_mediaelement_swf/flashmediaelement.swf',
});
});
</script>
視頻來源:
<video width="320" height="240" poster="poster.jpg" controls="controls" preload="none">
<!-- MP4 for Safari, IE9, iPhone, iPad, Android, and Windows Phone 7 -->
<source type="video/mp4" src="myvideo.mp4" />
<!-- WebM/VP8 for Firefox4, Opera, and Chrome -->
<source type="video/webm" src="myvideo.webm" />
<!-- Ogg/Vorbis for older Firefox and Opera versions -->
<source type="video/ogg" src="myvideo.ogv" />
<!-- Optional: Add subtitles for each language -->
<track kind="subtitles" src="subtitles.srt" srclang="en" />
<!-- Optional: Add chapters -->
<track kind="chapters" src="chapters.srt" srclang="en" />
<!-- Allow the plugin to generate the object markup, preventing the swf source from loading too early -->
</video>
希望這有助於!
你有這個標記``object width =「960」height =「540」type =「application/x-shockwave-flash」data =「player/mediaelementplayer.swf」>`,但它看起來像`http: // ways-means.channeltree.com/player/mediaelementplayer.swf`不存在 – JFK 2012-03-02 18:44:17