• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5 video播放器全屏(fullScreen)实现的方法

HTML5 video播放器全屏(fullScreen)实现的方法

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5,video,播放器,全屏方法等相关知识,匿名希望在学习及工作中可以帮助到您
这篇文章主要介绍了HTML5 video播放器全屏(fullScreen)方法实例,本文直接给出一个完整代码实例,需要的朋友可以参考下

首先来说,这个标题具有误导性,但这样设置改标题也是主要因为video使用的比较多

在html5中,全屏方法可以适用于很多html 元素,不仅仅是video

<!doctype  html>
<html>
<head>
<meta charset="utf-8" />
<title>全屏问题</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<meta http-equiv="imagetoolbar" content="no"/>
<meta name="apple-mobile-web-app-capable" content="yes"/>
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<style type="text/css">
*{
   padding: 0px;
   margin: 0px;
}

body p.videobox{
   width: 400px;
   height: 320px;
   margin: 100px auto;
   background-color:#000;
}

body p.videobox video.video
{
width: 100%;
   height: 100%;
}

:-webkit-full-screen {

}

:-moz-full-screen {

}

:-ms-fullscreen {

}

:-o-fullscreen {

}

:full-screen { 

}

:fullscreen {

}

:-webkit-full-screen video {
 width: 100%;
 height: 100%;
}
:-moz-full-screen video{
   width: 100%;
   height: 100%;
}
   </style>
</head>
<body>


<p id="videobox">

   <video controls="controls" preload="preload" id="video" poster="poster.jpg">
     <source src="./movie.ogg" type="video/ogg" />
     <source src="./movie.mp4" type="video/mp4" />
     <source src="./movie.webm" type="video/webm" />
     <object data="./movie.mp4" width="100%" height="100%">
       <embed width="100%" height="100%" src="./movie.swf" />
     </object>

   </video>
   <button id="fullScreenBtn">全屏</button>
</p>


<script type="text/javascript">

//反射調用
var invokeFieldOrMethod = function(element, method) 
{
  var usablePrefixMethod;
  ["webkit", "moz", "ms", "o", ""].forEach(function(prefix) {
      if (usablePrefixMethod) return;
      if (prefix === "") {
          // 无前缀,方法首字母小写
          method = method.slice(0,1).toLowerCase() + method.slice(1);   
      }
      var typePrefixMethod = typeof element[prefix + method];
      if (typePrefixMethod + "" !== "undefined") {
          if (typePrefixMethod === "function") {
              usablePrefixMethod = element[prefix + method]();
          } else {
              usablePrefixMethod = element[prefix + method];
          }
      }
  });

      return usablePrefixMethod;
};

//進入全屏
function launchFullscreen(element) 
  {
   //此方法不可以在異步任務中執行,否則火狐無法全屏
    if(element.requestFullscreen) {
      element.requestFullscreen();
    } else if(element.mozRequestFullScreen) {
      element.mozRequestFullScreen();
    } else if(element.msRequestFullscreen){ 
      element.msRequestFullscreen();  
    } else if(element.oRequestFullscreen){
       element.oRequestFullscreen();
   }
   else if(element.webkitRequestFullscreen)
    {
      element.webkitRequestFullScreen();
    }else{

       var docHtml  = document.documentElement;
       var docBody  = document.body;
       var videobox  = document.getElementById('videobox');
       var  cssText = 'width:100%;height:100%;overflow:hidden;';
       docHtml.style.cssText = cssText;
       docBody.style.cssText = cssText;
       videobox.style.cssText = cssText+';'+'margin:0px;padding:0px;';
       document.IsFullScreen = true;

     }
  }
//退出全屏
  function exitFullscreen()
  {
      if (document.exitFullscreen) {
        document.exitFullscreen();
      } else if (document.msExitFullscreen) {
        document.msExitFullscreen();
      } else if (document.mozCancelFullScreen) {
        document.mozCancelFullScreen();
      } else if(document.oRequestFullscreen){
           document.oCancelFullScreen();
       }else if (document.webkitExitFullscreen){
        document.webkitExitFullscreen();
      }else{
       var docHtml  = document.documentElement;
       var docBody  = document.body;
       var videobox  = document.getElementById('videobox');
       docHtml.style.cssText = "";
       docBody.style.cssText = "";
       videobox.style.cssText = "";
       document.IsFullScreen = false;
   }
 }
document.getElementById('fullScreenBtn').addEventListener('click',function(){
   launchFullscreen(document.getElementById('video')); 
   window.setTimeout(function exit(){
//檢查瀏覽器是否處於全屏
if(invokeFieldOrMethod(document,'FullScreen') || invokeFieldOrMethod(document,'IsFullScreen') || document.IsFullScreen)
{
exitFullscreen();
}
  },5*1000);
},false);

</script>
</body>

</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注微课江湖!

相关推荐:

HTML5 video标签的播放控制

关于H5新属性audio音频和video视频的控制解析

以上就是HTML5 video播放器全屏(fullScreen)实现的方法的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2017-08-06html5画布旋转效果示例
  • 2017-08-06HTML5中原生的右键菜单创建方法
  • 2018-12-03详细介绍7款炫酷的HTML5 Canvas动画特效
  • 2018-12-03一位大专生,应该怎样学习HTML5,之前对网页设计没有一点基础,同时英语水平较低,应该怎样学习?
  • 2018-12-03HTML5标签大全
  • 2018-12-03HTML5 Canvas API中drawImage()方法的使用实例_html5教程技巧
  • 2018-12-03如何配置H5的滚动条样式的代码
  • 2018-12-03html5的应用-画一个可爱的小猫咪效果图
  • 2018-12-03豆瓣电台为什么不做 HTML5 版的播放器呢?
  • 2018-12-03HTML文件HEAD内部标记浅析

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 【水果忍者】血日狂刀代码-_-#真的只有一把刀
    • 7款个性化jQuery/HTML5地图插件图文详细介绍
    • 有哪些使用 HTML5 技术开发的、基于移动平台的网页游戏站点?
    • zepto实现移动端无缝向上下滚动
    • 如何实现移动端的城市定位以及城市区域代码adcode
    • 很酷的HTML5电子书翻页动画特效
    • 移动端meta行的汇总
    • 22个HTML5 技巧二
    • HTML5开发必备-游戏开发资源合集(图文)
    • CSS transform中rotate能不能实现以对角线为轴进行旋转?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有