Javascript 如何将videojs从一个div复制到另一个div?

Javascript 如何将videojs从一个div复制到另一个div?,javascript,jquery,html,video.js,Javascript,Jquery,Html,Video.js,我有一个有录像带的div <div id="video"> <video id="example_video_1" class="video-js vjs-default-skin" width="200" height="200" data-setup="{}"> <source src="clip.mp4" type='video/mp4' /> </video> </div> 它复制了那个视频播放

我有一个有录像带的div

<div id="video">
    <video id="example_video_1" class="video-js vjs-default-skin" width="200" height="200" data-setup="{}">
        <source src="clip.mp4" type='video/mp4' />
    </video>
</div>

它复制了那个视频播放器,但它不工作(不能播放视频)。将videojs从一个div复制到另一个div的正确方法是什么?

我没有安装videojs,但您似乎只需要重新初始化播放器本身

参考:

如果您的网页或应用程序动态加载视频标记(ajax、appendChild等),以便在加载页面时视频标记可能不存在,则需要手动设置播放器,而不是依赖数据设置属性。为此,首先从标记中删除数据设置属性,这样在初始化播放器时就不会出现混淆。接下来,在加载Video.js javascript库以及将视频标记加载到DOM中之后,运行以下javascript

videojs(“示例视频1”,{},函数(){
//播放器(此)已初始化并准备就绪。

});将整个HTML从id#视频复制到id#块,如下所示:

例如:


您在控制台中是否收到任何JS错误?当你在移动视频后尝试播放视频时,播放器返回/显示什么?单击播放按钮时没有错误,没有发生任何事情我用Chrome测试了你的代码,它对我有效。仅克隆DOM不足以创建一个正常工作的video.js播放器。你到底想要实现什么,你需要两个玩家的副本?解释起来有点复杂。。。我想到了一个解决方案,根据现有视频中的可用信息重新创建一个新视频,但仍然没有issues@Alvarez我更新了我的答案,可能会对你有所帮助。@Alvarez当你复制视频,然后触发
videojs(“element_id”,{},function(){})时会发生什么?你能在实际操作的地方更新你的代码吗,谢谢。它可以用于普通视频,但问题是它是video.js
jQuery(document).ready(function(){
    var video = jQuery('#video').clone(true, true);
    jQuery('#block').append( video );
});
 $( "#copy" ).click(function() {
  var htmlString = $( "#video" ).html();
  $( "#block" ).html( htmlString );
});