LEBESTS-CENVEN的个人博客
欢迎来到lebests.cn!这里是Cenven的个人博客。
  1. 首页
  2. 开发
  3. 正文

js视频全屏以及监听的解决方案

2020年11月21日 68点热度 1人点赞 0条评论

js视频全屏以及监听的解决方案

视频全屏在不同的浏览器上的使用的方法不同,因此需要对各个浏览器做一下兼容

        //视频全屏
        if (video.requestFullscreen) {
          video.requestFullscreen();
        } else if (video.mozRequestFullScreen) {
          video.mozRequestFullScreen();
        } else if (video.webkitRequestFullScreen) {
          video.webkitRequestFullScreen();
        } else if (video.webkitEnterFullscreen) {
          // iOS进入全屏
          video.webkitEnterFullscreen();
        }

        //退出视频全屏
        if (video.exitFullscreen) {
          video.exitFullscreen();
        } else if (video.mozCancelFullScreen) {
          video.mozCancelFullScreen();
        } else if (video.webkitCancelFullScreen) {
          video.webkitCancelFullScreen();
        }

屏幕事件的监听可以使用fullscreenchange

          video.addEventListener(
            "webkitfullscreenchange",
            this.onFullscreenChange,
            false
          );
          video.addEventListener(
            "fullscreenchange",
            this.onFullscreenChange,
            false
          );
          video.removeEventListener(
            "fullscreenchange",
            this.onFullscreenChange
,
            false
          );

在ios设备上并没有可用的事件,但是webkitDisplayingFullscreen还是可用,因此可以通过计时器去获取这个的值来实现监听

        this.timer = setInterval(() => {
          if (!video.webkitDisplayingFullscreen) {
            // 退出了全屏
            clearInterval(this.timer);
            video.play();
//全屏切换会暂停播放视频,这里给它开启播放
          }
        }, 1000);
~谢谢打赏~
赏
本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: chrome ios js video 全屏
最后更新:2020年11月25日

2279881628@qq.com

打赏 点赞
下一篇 >

文章评论

取消回复

Cenven

保持饥渴的专注,追求最佳的品质

2021年1月
一 二 三 四 五 六 日
 123
45678910
11121314151617
18192021222324
25262728293031
« 12月    
文章归档
  • 2020年12月
  • 2020年11月
分类目录
  • 开发

COPYRIGHT © 2020 lebests.cn ALL RIGHTS RESERVED.

粤ICP备18064857号-1

粤公网安备 44011702000152号