我将 jsvideo 用于主要的 HTML5 视频,但它使用 flowplayer 作为其 Flash 后备...我可以使用它,除了 flowplayer 使用的 swf 文件需要来自 http 源...有没有办法让它所以我可以把文件放在我的服务器上?
更新:这是我使用的实际代码 - 在闪存回退部分中,我尝试直接引用 swf 媒体,但它不起作用。只有当我引用 flowplayer.org/swf/flowplayer-3.2.1.swf 的“data”、“param name="movie" value=" 和“param name="flashvars" ... url”时它才会起作用
$.fancybox({
'padding': 0,
'overlayOpacity': 0.7,
'autoDimensions': false,
'width': 650,
'height': 274,
'content': '<div><div class="video-js-box">' +
'<video id="example_video_1" class="video-js" width="640" height="264" controls="controls" preload="auto" poster="' + url + '.png">' +
'<source src="' + url + '.mp4" />' +
'<source src="' + url + '.webm" />' +
'<source src="' + url + '.ogv" />' +
'<!-- Flash Fallback. Use any flash video player here. Make sure to keep the vjs-flash-fallback class. -->' +
'<object id="flash_fallback_1" class="vjs-flash-fallback" width="640" height="264" type="application/x-shockwave-flash"' +
'data="/Content/media/flowplayer-3.2.1.swf">' +
'<param name="movie" value="/Content/media/flowplayer-3.2.1.swf" />' +
'<param name="allowfullscreen" value="true" />' +
'<param name="flashvars" value=\'config={"playlist":["' + url + '.png", {"url": "/Content/media/oceans-clip.mp4","autoPlay":false,"autoBuffering":true}]}\' />' +
'<!-- Image Fallback. Typically the same as the poster image. -->' +
'<img src="' + url + '.png" width="640" height="264" alt="Poster Image"' +
' title="No video playback capabilities." />' +
'</object>' +
'</video>' +
'</div></div>',
'onComplete': function () { $("#fancybox-inner").css({ 'overflow': 'hidden' }); },
'onClosed': function () { $("#fancybox-inner").empty(); }
});
您注意到 html5 视频的所有来源都可以来自“/Content/media/name.mp4”,因为 swf 文件(特别是 flowplayer-3.2.1.swf 和“url”需要来自 http://资源
(虽然我可以在本地引用 png 文件)
有没有办法解决?希望这是有道理的