Javascript 模式关闭时停止视频-Plyr插件
我用Plyr插件在多个模块中创建了多个视频播放器。模态的一个视频 我试图在当前模式关闭时停止当前视频 能帮我点忙吗Javascript 模式关闭时停止视频-Plyr插件,javascript,jquery,plyr,Javascript,Jquery,Plyr,我用Plyr插件在多个模块中创建了多个视频播放器。模态的一个视频 我试图在当前模式关闭时停止当前视频 能帮我点忙吗 Plyr.setup('.popin__video-container'); $('.btn-open').each(function(i, el) { var modal = $('#' + $(el).attr('data-modal')); var overlay = $('.popin__overlay'); va
Plyr.setup('.popin__video-container');
$('.btn-open').each(function(i, el) {
var modal = $('#' + $(el).attr('data-modal'));
var overlay = $('.popin__overlay');
var close = $('.btn-action');
function removeModal() {
modal.removeClass('statut-show');
overlay.removeClass('statut-show');
}
function removeModalHandler() {
removeModal();
}
$(el).click(function(e) {
e.preventDefault();
modal.addClass('statut-show');
overlay.addClass('statut-show');
});
close.click(function(e) {
if($(e.target).hasClass('btn-action')) {
e.preventDefault();
removeModalHandler();
var playerPopin = modal.find('.plyr');
if (!playerPopin.paused) {
playerPopin.pause();
}
}
});
});
尝试将播放器的初始化方法分配给一个变量,然后像这样调用
pause
方法
let player=Plyr.setup('.popin__视频容器')代码>
player.pause()代码>
这就是文档所说的。在设置plyr之后。无论何时使用该变量,它都会为您提供一个要处理的数组
所以你应该这样做:
const players = Plyr.setup('.js-player');
players.forEach(function(player) {
player.pause();
});
或者,如果您正在使用引导模式:
const players = Plyr.setup('.js-player');
$('.myModal').on('hide.bs.modal',function (){
players.forEach(function(player) {
player.pause();
});
});
您也可以查看此链接:谢谢您的回答。我也试过了。我有一条错误消息:无法读取Null的属性“暂停”。感谢您的贡献:-)我将测试我很乐意提供帮助