javascript-js点击某一个链接交替执行两个函数(js实现网页全屏问题)

问题描述

js点击某一个链接交替执行两个函数(js实现网页全屏问题)
想实现的需求:
1、网页上有个“全屏显示”按钮(链接),点击全屏后执行函数fullScreen(),然后“显示全屏”二字变成“退出全屏”;
2、点击“退出全屏”执行函数exitFullScreen(),然后“退出全屏”变为“全屏显示”

function fullScreen() {
var el = document.documentElement;
var rfs = el.requestFullScreen || el.webkitRequestFullScreen ||
el.mozRequestFullScreen || el.msRequestFullScreen;
if(typeof rfs != ""undefined"" && rfs) {
rfs.call(el);
} else if(typeof window.ActiveXObject != ""undefined"") {
//for IE,这里其实就是模拟了按下键盘的F11,使浏览器全屏
var wscript = new ActiveXObject(""WScript.Shell"");
if(wscript != null) {
wscript.SendKeys(""{F11}"");
}
}
}
function exitFullScreen() {
var el = document;
var cfs = el.cancelFullScreen || el.webkitCancelFullScreen ||
el.mozCancelFullScreen || el.exitFullScreen;
if(typeof cfs != ""undefined"" && cfs) {
cfs.call(el);
} else if(typeof window.ActiveXObject != ""undefined"") {
//for IE,这里和fullScreen相同,模拟按下F11键退出全屏
var wscript = new ActiveXObject(""WScript.Shell"");
if(wscript != null) {
wscript.SendKeys(""{F11}"");
}
}
}

解决方案

 <a href=""#"" onclick=""return ExecuteFun(this)"">全屏显示</a><script>    function ExecuteFun(a) {        var full = a.innerHTML == '全屏显示';        full ? fullScreen() : exitFullScreen();        a.innerHTML = full ? '退出全屏' : '全屏显示';        return false;    }    function fullScreen() {        var el = document.documentElement;        var rfs = el.requestFullScreen || el.webkitRequestFullScreen ||        el.mozRequestFullScreen || el.msRequestFullScreen;        if (typeof rfs != ""undefined"" && rfs) {            rfs.call(el);        } else if (typeof window.ActiveXObject != ""undefined"") {            //for IE,这里其实就是模拟了按下键盘的F11,使浏览器全屏            var wscript = new ActiveXObject(""WScript.Shell"");            if (wscript != null) {                wscript.SendKeys(""{F11}"");            }        }    }    function exitFullScreen() {        var el = document;        var cfs = el.cancelFullScreen || el.webkitCancelFullScreen ||        el.mozCancelFullScreen || el.exitFullScreen;        if (typeof cfs != ""undefined"" && cfs) {            cfs.call(el);        } else if (typeof window.ActiveXObject != ""undefined"") {            //for IE,这里和fullScreen相同,模拟按下F11键退出全屏            var wscript = new ActiveXObject(""WScript.Shell"");            if (wscript != null) {                wscript.SendKeys(""{F11}"");            }        }    }</script>

解决方案二:
$(selector).toggle(fullScreen()exitFullScreen())

时间: 2024-11-03 12:12:09

javascript-js点击某一个链接交替执行两个函数(js实现网页全屏问题)的相关文章

javascript封装addLoadEvent实现页面同时加载执行多个函数的方法_javascript技巧

本文实例讲述了javascript封装addLoadEvent实现页面同时加载执行多个函数的方法.分享给大家供大家参考,具体如下: 如果想同时执行多个函数,可以将这些函数放入一个数组中,然后在onload事件里循环数组并执行,或者使用另一个方便的函数addLoadEvent: function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.o

VC下做一个功能,双击列表控件,使得列表全屏显示,按Esc键恢复原来状态,怎么做?

问题描述 VC下做一个功能,双击列表控件,使得列表全屏显示,按Esc键恢复原来状态,怎么做? 使用List Control,双击它的时候能够变成全屏,按Esc键恢复原来状态 解决方案 是什么环境?如果是VB或者C#,你可以做一个窗口,不要边框和标题栏(controlbox FormBorderStyle),list control dock设置为fill响应keypress,如果是窗口,就切换到全屏的那个窗口,否则切换回来. 解决方案二: 处理db_click双击消息,然后MoveWindow调

prior-oracle 集合类型,取得前一个元素和后一个元素。这两个函数的输出真不理解

问题描述 oracle 集合类型,取得前一个元素和后一个元素.这两个函数的输出真不理解 DECLARE type jihe is table of number not null index by varchar2(20); a jihe ; begin a('x'):= 1111; a('y'):= 2222; a('z'):= 3333; a('b'):= 4444; dbms_output.put_line('================'); dbms_output.put_line

用一个链接同时打开两个帧页

链接 有时要求利用一个超链来同时打开两个帧页.我们先假设要通过超链1来同时载入帧页first.htm和next.htm到不同的帧页窗口,其中将next.htm在窗口banner处打开(窗口名称可以在框架页中类似 <frame name="banner" target="main" src="left.htm">的语句中找到). 需要在first.htm中加入onload指令: <body ></body> 具体

简洁的一个实现网页全屏代码_页面背景

一打开网页不需要点击,能够直接全屏隐藏地址栏的那种如何实现 如我把静态网页刻到光盘中,打开立刻全屏,语言表达能力不太好哈,见谅 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

bat、vbs、js 原生混编(一个bat可以执行vbs,js代码)_DOS/BAT

发现 mshta 会把 file:// 协议指向的文件当作 html 来解析(注:IUnknown 与 happyxxdhaha 提醒此处必需使用绝对路径,否则不会执行),心里顿时有一万只草泥马奔过,原来如此简单的答案就在身边,却错过了四年 基本框架: 复制代码 代码如下: <!-- : bathome @echo off echo I'm Batch! mshta "file://%~f0" pause&exit 使用注释标签囊括批处理部分,条件是批处理部分不能出现注释

JS实现浏览器全屏和退出全屏

   测试环境:     [操作系统]: win7 64位     [IE]:IE9     [FireFox]: FireFox 29     [Chrome]: Chrome 34     众所周知,IE是个奇葩的浏览器,但是由于用户量很大,开发者还是不得不为IE考虑一下,于是,各种浏览器相关的操作,都要多一个特别的判断--专门针对IE浏览器的判断,这里的全屏也不例外.看代码: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2

利用浏览器全屏api实现js全屏

这篇文章主要介绍了利用浏览器全屏api实现js全屏的代码示例,示例中使用了jquery,把这个库的地址改成自己的,大家参考使用吧 代码如下: (function () {  var fullScreenApi = {   supportsFullScreen : false,   isFullScreen : function () {    return false;   },   requestFullScreen : function () {},   cancelFullScreen :

利用浏览器全屏api实现js全屏_jquery

复制代码 代码如下: (function () { var fullScreenApi = {  supportsFullScreen : false,  isFullScreen : function () {   return false;  },  requestFullScreen : function () {},  cancelFullScreen : function () {},  fullScreenEventName : '',  prefix : '' }, browser