html5 videojs脚本无法使用模态弹出窗口

时间:2015-10-14 09:37:35

标签: jquery html5 video.js

在我的html文件中,我集成了bootstrap模式弹出窗口。

在这里,我列出了超过10个带有猫头鹰旋转木马的视频。通过单击每个视频拇指,将播放相应的视频。

这是我的播放器代码:

<div id="mediaspace2968631" class="videoplayer  player vc_col-sm-9 left-video" style="margin-top:0px;">

  

在每个视频大拇指上,单击名为change_video_cat(vvideo,vimg,id,n)

的功能
    function change_video_cat(vvideo,vimg,id,n) {
    frmid = 'item_'+id;

    $(".item").removeClass('curactive');
    $("#"+frmid).addClass('curactive');


    myPlayer =   videojs('vid3', {
    'techOrder': ['youtube', 'html5'], "controls": true, "autoplay": false, "preload": "auto","poster": vimg
    }).ready(function() {
        var player = this;
        player.src({ src: vvideo, type: 'video/youtube' });
    });

}

如果我关闭模态弹出窗口,然后再次打开它,那时出现以下错误

VIDEOJS: WARN: Player "vid3" is already initialised. Options will not be applied.

请帮我解决这个问题。视频播放流畅,猫头鹰旋转木马在第一次模态打开时工作正常。如果我关闭模式弹出窗口,然后再次打开它,页面将无法正常工作,视频也不会显示。旋转木马腐败了。

请帮帮我。

3 个答案:

答案 0 :(得分:1)

我在这里找到了解决这个问题的方法:

https://github.com/videojs/video.js/blob/master/docs/guides/removing-players.md

&#13;
&#13;
var oldPlayer = document.getElementById('my-player');
videojs(oldPlayer).dispose();
&#13;
&#13;
&#13;

答案 1 :(得分:1)

您可以尝试此方法。它将起作用。

try {
  if (videojs("video-id")) {
    videojs("vide-id").dispose();
  }
} catch (e) {}

答案 2 :(得分:0)

警告表示第二次创建身份vid的玩家已经存在。

如果您第二次重新显示相同的div和播放器,只需将新视频加载到现有播放器中即可。否则在每个模态中使用唯一ID,或在使用myPlayer.dispose()关闭模态之前处置播放器。