html5 video play方法,html5 – 如何在现代Chrome上访问video.play()API
我正在使用
HTML5視頻標記API來播放網絡攝像頭中的視頻,如下所示:videoElement = element.find('video')[0];
navigator.getUserMedia(constraints, function(stream) {
if (navigator.mediaDevices.getUserMedia) {
videoElement.mozSrcObject = stream;
} else {
var vendorURL = window.URL || window.webkitURL;
videoElement.src = window.URL.createObjectURL(stream);
}
videoElement.play();
最近我開始有一個錯誤:未捕獲(在promise中)DOMException:該元素沒有支持的源.
還有這個功能鏈接 – https://www.chromestatus.com/feature/4765305641369600是關于Deprecate MediaStreamTrack.getSources()的,有利于MediaDevices.enumerateDevices().但是,如果我從控制臺運行它,則MediaStreamTrack.getSources是未定義的.不確定這是否相關.var playPromise = document.querySelector('video').play();
// In browsers that don’t yet support this functionality,
// playPromise won’t be defined.
if (playPromise !== undefined) {
playPromise.then(function() {
// Automatic playback started!
}).catch(function(error) {
// Automatic playback failed.
// Show a UI element to let the user manually start playback.
});
}
測試此代碼始終屬于catch部分 – 自動播放失敗.
我使用的是Chrome v.53.在當前的Firefox中,舊代碼工作正常.
最佳答案 要獲得正確的承諾,您需要等到視頻數據加載完畢.所以video.addEventListener('loadeddata', function() {
playPromise = video.play();
});
video.load();
總結
以上是生活随笔為你收集整理的html5 video play方法,html5 – 如何在现代Chrome上访问video.play()API的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言飞机订票系统
- 下一篇: c语言常量指针和指针常量