我有一个HTML视频,当用户点击播放时可以全屏播放。如果用户在全屏内点击逃生,一切正常 - 视频停止播放并退出全屏。但是,如果用户在全屏内暂停视频然后点击逃脱,视频将再次开始播放,导致视频中的声音在退出全屏时返回的页面上循环播放。我的js控件如下:
exitHandler: function(){
vid = Video.vid;
$(Video.featuredVideo).toggleClass('featured-video-show');
if (document.webkitIsFullScreen || document.mozFullScreen || document.msFullscreenElement !== null){
if (vid.paused){
vid.play();
}
else {
vid.pause();
}
}
}
如果用户在全屏幕内暂停然后点击“退出”,如何停止视频/音频开始备份?退出全屏?
答案 0 :(得分:0)
创建一个变量来跟踪您当前(处理程序执行时)是退出还是进入全屏,如果您确实退出,则不要触发play
命令它。我不认为有针对此的特定事件监听器,因此您可能必须为此编写间隔。当我遇到这个问题时,我使用了以下功能:
var canFullscreen = function(){
return (
!document.fullscreenElement &&
!document.mozFullScreenElement &&
!document.webkitFullscreenElement &&
!document.msFullscreenElement );
}
此功能检查我们当前是否可以进入全屏模式。如果它返回false
,则表示没有全屏功能(旧/奇怪的浏览器),或者您已经全屏。这是我在间隔中运行的功能,以准确检查用户何时退出全屏(并在此时以编程方式处理退出)。如果您正在跟踪退出按钮的按键,则可以将该功能放在那里以确定您是进入还是退出全屏。