几个月前,Jean-François提出了类似的问题,但我的问题更棘手。
我必须在名为'ajax Content'的节点中加载不同的内容
第一次初始化播放器并且视频已显示其控制条的外观。
但是如果加载了另一部电影或同一部电影,则Video.js脚本不会被初始化并运行。
如果我使用'remove()'或'empty()'清除节点,也会发生这种情况
这是外部html文件的一部分:
<div id="video">
<video id="html5_video" class="video-js vjs-ms-skin" autoplay controls preload>
<source src="fileadmin/themen/de/iagos.mp4" type='video/mp4' />
</video>
<div class="ajaxLoadClose"></div>
这是jQuery脚本
$(".ajax-content").load(pfad+"#video",function(responce,status,xhr){
if (status=="success")
{
_V_("html5_video");
$(".ajax-content").css("display","block");
$(".ajaxLoadClose").click(function() {
var vidBig = $(this).parent().find("video").get(0);
vidBig.pause();
$(".ajax-content").fadeOut('slow', function() {
$('.ajax-content').children().remove();
});/**/
});
}
});
有什么样的重置吗?谢谢你的帮助。
答案 0 :(得分:3)
如果您为每个视频创建一个新播放器而不转到新页面,它将开始构建播放器实例,因为对播放器的引用通过其ID存储在_V_.players
对象中。如果你拨打player.destroy()
,它将删除播放器参考。只要确保你没有其他任何引用玩家的东西。您还需要从页面中删除播放器.video-js div。在以后的版本中,player.destroy()函数也会这样做。
有关详细讨论,请参阅this。 :)