附加视频元素时防止不必要的 pause()
Prevent unwanted pause() when appending a video element
在一个cordova项目中,我使用了相机插件。在浏览器中,它在 div 和 class cordova-camera-capture
.
中创建视频元素
由于我使用的 css 框架 (FrameWork7),这个 div 是不可见的,我无法拍摄网络摄像头照片。
所以我决定在我的视图中移动 div(在 ID 为 capture
的 div 中)。
这是我的代码:
$(document).on('DOMNodeInserted', function(e) {
var element = e.target;
if ( $(element).is('div.cordova-camera-capture') && !$(element).parent().is('div#capture') ) {
$('#capture').append(element);
}
});
有效,但视频已停止。我可以看到网络摄像头捕获,但在我遇到的控制台上:
Uncaught (in promise) DOMException: The play() request was interrupted
by a call to pause().
我可以通过重新启动来解决视频暂停的问题:
$('#capture').find('video').get(0).play();
但我觉得这不是一种方便的方法,因为它没有消除主要错误。
有什么方法可以通过附加它来防止对 "moving" 和 div 的 pause() 调用?或者在不触发 pause() 的情况下移动元素的任何技术?
使用autoplay
属性
<video autoplay>
在一个cordova项目中,我使用了相机插件。在浏览器中,它在 div 和 class cordova-camera-capture
.
由于我使用的 css 框架 (FrameWork7),这个 div 是不可见的,我无法拍摄网络摄像头照片。
所以我决定在我的视图中移动 div(在 ID 为 capture
的 div 中)。
这是我的代码:
$(document).on('DOMNodeInserted', function(e) {
var element = e.target;
if ( $(element).is('div.cordova-camera-capture') && !$(element).parent().is('div#capture') ) {
$('#capture').append(element);
}
});
有效,但视频已停止。我可以看到网络摄像头捕获,但在我遇到的控制台上:
Uncaught (in promise) DOMException: The play() request was interrupted by a call to pause().
我可以通过重新启动来解决视频暂停的问题:
$('#capture').find('video').get(0).play();
但我觉得这不是一种方便的方法,因为它没有消除主要错误。
有什么方法可以通过附加它来防止对 "moving" 和 div 的 pause() 调用?或者在不触发 pause() 的情况下移动元素的任何技术?
使用autoplay
属性
<video autoplay>