HTML5 full-screen全屏API

这篇文章纯属记录,非常感谢张鑫旭大神的demo

原文地址: http://www.zhangxinxu.com/study/201210/html5-full-screen-api.html

代码

CSS代码:
.full {
    text-align: center;
    cursor: pointer;
}

.full img {
    vertical-align: middle;
}

.full:hover img {
    box-shadow: 2px 2px 4px rgba(0,0,0,.45);
}

.full:after {
    /* 图片垂直居中显示 */
    display: inline-block;
    content: ‘‘;
    width: 0;
    height: 100%;
    vertical-align: middle;
}

:-webkit-full-screen img    { height: 60%; }
:-moz-full-screen img       { height: 60%; }
:-ms-full-screen img        { height: 60%; }
:-o-full-screen img         { height: 60%; }
:full-screen img            { height: 60%; }
HTML代码:
<div class="full" title="点击全屏浏览"><img src="http://image.zhangxinxu.com/image/study/s/s512/mm1.jpg" /></div>
JS代码:
(function() {
    var runPrefixMethod = 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;
    };

    if (typeof window.screenX === "number") {
        var eleFull = document.querySelector(".full");
        eleFull.addEventListener("click", function() {
            if (runPrefixMethod(document, "FullScreen") || runPrefixMethod(document, "IsFullScreen")) {
                runPrefixMethod(document, "CancelFullScreen");
                this.title = this.title.replace("退出", "");
            } else if (runPrefixMethod(this, "RequestFullScreen")) {
                this.title = this.title.replace("点击", "点击退出");
            }
        });
    } else {
        alert("爷,现在是年轻人的时代,您就暂且休息去吧~~");
    }
})();
时间: 2024-11-11 12:15:17

HTML5 full-screen全屏API的相关文章

html5 自带全屏API调用方法

function FullScreen(){ var el = $('html')[0];//要全屏的元素,如果要全页面全屏,建议使用html节点而不是body节点 var isFullscreen=document.fullScreen||document.mozFullScreen||document.webkitIsFullScreen; if(!isFullscreen){//进入全屏,多重短路表达式 (el.requestFullscreen&&el.requestFullscr

HTML5实现全屏API【进入和退出全屏】

现在主流浏览器基本上实现了全屏效果,但是不同浏览器实现不一样: [进入和退出全屏] // Webkit (works in Safari5.1 and Chrome 15)element.webkitRequestFullScreen();document.webkitCancelFullScreen(); // Firefox 10+element.mozRequestFullScreen();document.mozCancelFullScreen(); // W3C 提议element.r

使用html5中video自定义播放器必备知识点总结以及JS全屏API介绍

一.video的js知识点: controls(控制器).autoplay(自动播放).loop(循环)==video默认的: 自定义播放器中一些JS中提供的方法和属性的记录: 1.play()控制视频的播放 2.pause()控制视频的停止 3.currentTime控制视频的当前时间 4.muted控制视频是否静音(赋值true or false) 5.volume控制音量的大小(赋值0-1) 6.duration视频的总时间 7.ontimeupdate事件(当前播放位置改变时执行,使用时

HTML5微信播放全屏问题的解决方法

在ios和安卓手机里的微信下播放视频时,会遇到不少问题,例如需要手动点击,视频才会播放,并且视频会跳出微信框,出现控制条,如果视频不是腾讯视频,播放完毕会出现腾讯视频的广告推送等问题 解决办法:给video标签加一些属性,调用h5原生video. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <video   id="videoALL"   src="video/01.mp4"   poster="images/1.j

Html5添加制作全屏响应式效果的图片画廊插件教程

一.安装 npm install jquery-gallerybox 二.使用方法 <link rel="stylesheet" type="text/css" href="css/gallerybox.css">               <script src="js/jquery.min.js"></script> <script src="js/jquery.gal

Android 使WebView支持HTML5 Video(全屏)播放的方法

http://blog.csdn.net/zrzlj/article/details/8050633 1)需要在AndroidManifest.xml文件中声明需要使用HardwareAccelerate, 可以细化到Activity级别,如果不需要的View可以声明不要用加速,但是需要在代码中做,具体如下: a. 如果要声明整个应用都要加速: < application ... android:hardwareAccelerated ="true"> b.  如果要在Ac

html5实现全屏的api方法

参考地址 [进入和退出全屏] // Webkit (works in Safari5.1 and Chrome 15) element.webkitRequestFullScreen(); document.webkitCancelFullScreen(); // Firefox 10 element.mozRequestFullScreen(); document.mozCancelFullScreen(); // W3C 提议 element.requestFullscreen(); doc

用html5 js实现浏览器全屏

项目中需要将后台浏览器的窗口全屏,也就是我们点击一个按钮要实现按F11全屏的效果. 在HTML5中,W3C制定了关于全屏的API,就可以实现全屏幕的效果,也可以让页面中的图片,视频等全屏目前只有google chrome 15 +, safri5.1+,firfox10+,IE11支持 全屏 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 var docElm = document.documentElement; //W3C  if (docElm.re

[JavaScript] 用html5 js实现浏览器全屏

项目中需要将后台浏览器的窗口全屏,也就是我们点击一个按钮要实现按F11全屏的 效果. 在HTML5中,W3C制定了关于全屏的API,就可以实现全屏幕的效果,也可以 让页面中的图片,视频等全屏目前只有google chrome 15 +,safri5.1+,firfox10+,IE11支持 全屏: var docElm = document.documentElement; //W3C   if (docElm.requestFullscreen) {       docElm.requestFu