【问题标题】:pause JW player?暂停 JW 播放器?
【发布时间】:2014-04-01 06:06:29
【问题描述】:

我有三个标签。

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

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

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

【问题讨论】:

  • 使用暂停而不是停止。

标签: javascript jquery performance video jwplayer


【解决方案1】:

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

为此,我更喜欢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

}
}
});

我认为上面的代码可以解决问题,请尝试一下

【讨论】:

  • 我想在点击标签时使用这个...有可能吗?我的意思是我可以在点击我的标签时调用函数 pause_media ..我不知道如何使用 onPlay 以及那是什么确实..
  • onPlay() 事件在视频播放时被触发......它可以在我使用的事件设置中定义,或者您可以在设置之外使用它 jwplayer().onPlay( function( event){ alert('视频正在播放'); }); .....longtailvideo.com/support/jw-player/28850/…
猜你喜欢
  • 2012-02-08
  • 1970-01-01
  • 1970-01-01
  • 2016-08-31
  • 1970-01-01
  • 1970-01-01
  • 2015-02-12
  • 2023-03-22
  • 1970-01-01
相关资源
最近更新 更多