附加视频元素时防止不必要的 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>