Javascript 模式关闭时停止视频-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插件在多个模块中创建了多个视频播放器。模态的一个视频

我试图在当前模式关闭时停止当前视频

能帮我点忙吗

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的属性“暂停”。感谢您的贡献:-)我将测试我很乐意提供帮助