html视频javascript播放方法在mobile Safari中不起作用
我在我的ember.js应用程序中有一个视频元素,我正在使用html视频javascript播放方法在mobile Safari中不起作用,javascript,ios,safari,html5-video,Javascript,Ios,Safari,Html5 Video,我在我的ember.js应用程序中有一个视频元素,我正在使用window.URL.createObjectURL(文件)设置它的src,以便在上传之前生成预览。从视频文件输入捕获后,呈现的html如下所示: <video class="video-review" controls="1" autoplay="1" src="blob:http://66efcd0.ngrok.com/bb427ce0-af04-4763-bb59-3be85b936895"> </video
window.URL.createObjectURL(文件)
设置它的src
,以便在上传之前生成预览。从视频文件输入捕获后,呈现的html如下所示:
<video class="video-review" controls="1" autoplay="1"
src="blob:http://66efcd0.ngrok.com/bb427ce0-af04-4763-bb59-3be85b936895">
</video>
// * ngrok is just a port forwarding util for testing
这是行不通的。但是,如果我手动点击视频并播放它(并使其聚焦),那么从控制台调用vid.play()
就可以正常播放视频。所以我试着让视频聚焦:
vid.focus() and jquery $(vid).focus()
vid.play()
不走运
如何在mobile Safari中使用javascript播放HTML视频为什么自动播放不起作用?
此外,下面是分配视频属性的代码(由文件更改事件的观察者触发):
你不能。只有在响应用户操作(如单击事件处理程序)时,才对视频调用play。这是故意的
vid.focus() and jquery $(vid).focus()
vid.play()
var file = this.get('file');
window.URL = window.URL || window.webkitURL;
var vid = this.$('.video-review').get(0);
vid.src = window.URL.createObjectURL(file);
vid.file = file;
vid.addEventListener('canplaythrough', function() {
this.play();
}, false);
vid.load();