我们的应用正在生成此标记:
<video id='player' width='512' preload='none' controls='controls'>
<source src='http://unpredictablesite.com/notfound.mp4' type='video/mp4' />
<source src='http://predictablesite.com/exists.mp4' type='video/mp4' />
</video>
我们正在使用MediaElement.js(版本2.10.0)并希望播放器首先尝试从unpredicatablesite.com播放源代码,然后如果找不到第一个,则从predicatablesite.com转到源代码。< / p>
有趣的是,单独使用HTML5视频标签时,滚动到下一个源似乎有效,但不能使用MediaElement.js。我们有什么选择才能让它发挥作用?播放器实例化时的错误:function(){}似乎没有触发源404错误,因此该计划不起作用。
答案 0 :(得分:0)
您可以检查第一个来源的状态,如果是200(这实际上意味着服务器上存在该文件),您可以动态分配视频源。 如果视频不存在,则将视频分配给第二个源。
var http = jQuery.ajax({
type:"HEAD",
url: $('source:first').attr('src'),
async: false
});
var vidsrc;
if ( http.status == 200 ) vidsrc = $('source:first').attr('src');
else $('source:eq(1)').attr('src');
var myvid = new MediaElementPlayer('#player', {
translationSelector: true,
success: function (mediaElement) {
var sources = [{ src: vidsrc, type: 'video/mp3' }];
mediaElement.setSrc(sources);
mediaElement.pause();
mediaElement.load(); }
});