繁体   English   中英

暂停JW播放器?

[英]pause JW player?

我有三个标签。

每个标签在滑块中有两个视频。 问题是当我切换任何标签点击任何一个视频时,所有其他标签应该暂停。

我可以收集所有id然后循环使用stop()。但是还有其他方法更清洁和更简单。

jwplayer('video_pub').stop(); //for 1 video..how can i do for all videos?

而不是使用jwplayer().stop() ,你可以使用jwplayer().pause()

为此,我大多喜欢jwplayer().play(false).

资料来源: Jwplayer API

逻辑

只需获取包含所有标签的父视频包装器(因为每个标签有两个视频)...找到当前正在播放的jwplayer并停止所有其他播放器。

pauseMedia : function(playingMediaId) {
        $('#parent_video_wrapper').find('.jwplayer, object').each(function(){
            currentMediaId =$(this).attr('id');
            if( jwplayer(this).getState() == "PLAYING" || jwplayer(this).getState() == "BUFFERING" ) {
                if(currentMediaId != playingMediaId){
                    jwplayer(this).play(false);
                }
            }
        });
}

现在你可以使用上面的函数作为pauseMedia()或pauseMedia(mediaId),两者都可以

在视频设置中,如果你这样使用它

jwplayer("video_"+videoId).setup({

events : {
onPlay : function (callback){
        var playingVideoId = 'video_'+videoId;
        pauseMedia(playingVideoId); 
       //pausing other simulatenously playing video in a tab

}
}
});

我认为上面的代码可能会成功,只需试一试

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM