我可以解决此问题的唯一方法是通过画布播放视频。
在视频元素旁边添加一个画布并隐藏视频元素。
我没有通用脚本作为示例,但我使用的是这样的:
;(function(window){
var Animation = {
animateVideo: function () {
var self = this,
video = document.getElementById('video'),
canvas = document.getElementById('canvas'),
context = canvas.getContext('2d'),
width = canvas.clientWidth,
height = canvas.clientHeight;
canvas.width = width;
canvas.height = height;
video.addEventListener('play', function() {
self.draw(this, context, width, height);
}, false);
video.play();
},
draw: function (video, context, width, height) {
var self = this;
if(video.paused || video.ended) return false;
context.drawImage(video,0,0,width,height);
setTimeout(function() {
self.draw(video, context, width, height);
}, 60);
}
}
window.Animation = Animation;
}(window));
....
并在您需要并准备就绪时在主脚本中调用:
Animation.animateVideo();
请记住,此示例是一个想法,取自特定解决方案,删除了一些内容以便快速回答,但我希望它有助于为您提供一些线索。
问候!