我正在使用最新升级的videojs插件(工作正常)。7.6.54.*4.*我已经模拟了我的项目使用videojs.我想通过更改 html 内容在同一个对话框中显示图像或视频问题: videojs播放器不是每次都加载或播放(仅第一次播放),如何使其一直播放。重现我的问题的步骤:请参阅下面的代码片段或转到此 codepen 链接 https://codepen.io/eabangalore/pen/PoPwQjZ等待 30 秒 videojs 将第一次正确出现在对话框中。3.对话框将消失,图像将显示。再等 30 秒,videojs 将无法加载。下面是我的代码:function initializePlayer(){ var player = videojs('vplayer', {inactivityTimeout: 0}); player.ready(function() { player.src({ src: "https://vjs.zencdn.net/v/oceans.webm", type: "video/webm" }); });}var showCloseNum = 0;var intId = setInterval(function(){ showCloseNum++; $('#videojs_player_dialog').dialog({ modal: true, resizable: false, autoOpen: false, width: 600, height: 350, open: function(){ var player = ` <video disablepictureinpicture="" autoplay controlslist="nodownload" id="vplayer" class="video-js vjs-default-skin" controls muted data-setup='{ "inactivityTimeout": 0}' style="width:600;height:350;"> <source src="#"></source> </video> `; var image = '<img src="https://via.placeholder.com/468x60?text=Visit+Blogging.com+NoC/O https://placeholder.com/">'; if(showCloseNum % 2 == 0){ $('#videojs_player_dialog').html(player);initializePlayer(); }else{ $('#videojs_player_dialog').html(image); } }, beforeClose: function () { $('#videojs_player_dialog').html(''); $(this).dialog('destroy'); } }); if(showCloseNum % 2 == 0){ $('#videojs_player_dialog').dialog('open'); }else{ $('#videojs_player_dialog').dialog('close'); }},6000);
1 回答
qq_花开花谢_0
TA贡献1835条经验 获得超7个赞
您需要处理该播放器,而不仅仅是删除其元素,否则您无法初始化具有相同 id 的其他播放器。
videojs.getPlayer('vplayer').dispose()
- 1 回答
- 0 关注
- 110 浏览
添加回答
举报
0/150
提交
取消