在JavaScript插件Plyr中检测视频是否正在播放

3
我正在使用来自此处的Plyr JavaScript插件 - https://github.com/sampotts/plyr,并且我需要检测用户是否正在观看视频。最终,我将添加用于使用AJAX收集统计信息的代码。然而下面的代码不起作用。
const player = new Plyr('#video1', {
    controls: ['play-large', 'play', 'progress', 'current-time', 'captions', 'fullscreen', 'settings']
});

jQuery(function ($) {
    if (player.playing) {
        alert ("playing!!");
    }
});

如果您有任何解决方案,请发布出来。 - EaBengaluru
1个回答

1
    var plyrView = false; // Has he watched it before?
    var videoId = 123456;
    var counter = 0;
    document.addEventListener('DOMContentLoaded', () => {
        const player = new Plyr('#player');
        window.player = player;
        $('.plyr').click(function() {
            if (plyrView == false) {
                setTimeout(function() {
                    var divPlaying = $('div').hasClass('plyr--playing');
                    if (player.playing == true && divPlaying == true && plyrView == false) {
                        $.ajax({
                            type: 'post',
                            url: 'ajax.php',
                            data: { 'videoId': videoId },
                            success: function(viewVideo) {
                                if (viewVideo == 'success') {
                                    plyrView = true;
                                    counter++;
                                } else {
                                    // Error Code
                                }
                            }
                        });
                    }
                }, 3000);
            }
        });
    }); 
 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接