js 页面全屏,退出全屏, fullScreen

2023-11-29 16:38

本文主要是介绍js 页面全屏,退出全屏, fullScreen,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目有个需求,当点击打开一个新页面的时候需要该页面全屏(类似F11键功能),查找之后发现没办法直接用js来触发全屏,只能通过用户鼠标、键盘等事件中才能触发,即“对于一些非用户事件,比如onload、timeout等之类的事件中调用requestFullScreen是无法生效的,出于安全性考虑必须在用户事件中调用,比如鼠标、键盘等操作”。
文档全屏的方法本身是作用在body或documentElement上的,也可以作用的元素本身上,其他元素如CANVAS、VIDEO,之类的也可以发起全屏请求。

作用在document的全屏代码

function fullScreen(){var docElm = document.documentElement; if (docElm.requestFullscreen) {  docElm.requestFullscreen();  } else if (docElm.mozRequestFullScreen) {docElm.mozRequestFullScreen();  } else if (docElm.webkitRequestFullScreen) {docElm.webkitRequestFullScreen();  } else if (elem.msRequestFullscreen) {elem.msRequestFullscreen();}
}

作用在document的关闭全屏代码

 function closeFullScreen(){if (document.exitFullscreen) {  document.exitFullscreen();  }else if (document.mozCancelFullScreen) {  document.mozCancelFullScreen();  }else if (document.webkitCancelFullScreen) {  document.webkitCancelFullScreen();  }else if (document.msExitFullscreen) {document.msExitFullscreen();}}

基于元素全屏的代码

<!--html code--><div id="content" style="width:500px;height:500px;background:red;">这是被全屏的元素<button id='btn'>全屏</button><button id="closeBtn">退出全屏</button>  </div> 
//js code
function fullScreen(el) {  var rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullScreen,  wscript;  if(typeof rfs != "undefined" && rfs) {  rfs.call(el);  return;  }    if(typeof window.ActiveXObject != "undefined") {  wscript = new ActiveXObject("WScript.Shell");  if(wscript) {  wscript.SendKeys("{F11}");  }  }  
}    
function exitFullScreen(el) {  var el= document,  cfs = el.cancelFullScreen || el.webkitCancelFullScreen || el.mozCancelFullScreen || el.exitFullScreen,  wscript;     if (typeof cfs != "undefined" && cfs) {  cfs.call(el);  return;  }     if (typeof window.ActiveXObject != "undefined") {  wscript = new ActiveXObject("WScript.Shell");  if (wscript != null) {  wscript.SendKeys("{F11}");  }  }  
} var btn = document.getElementById('btn');  
var content = document.getElementById('content');   //被全屏显示的元素
btn.onclick = function(){  fullScreen(content);  
}  
var closeBtn = document.getElementById('closeBtn');  
closeBtn.onclick = function(){  exitFullScreen();  
} 

这篇关于js 页面全屏,退出全屏, fullScreen的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/433541

相关文章

通过React实现页面的无限滚动效果

《通过React实现页面的无限滚动效果》今天我们来聊聊无限滚动这个现代Web开发中不可或缺的技术,无论你是刷微博、逛知乎还是看脚本,无限滚动都已经渗透到我们日常的浏览体验中,那么,如何优雅地实现它呢?... 目录1. 早期的解决方案2. 交叉观察者:IntersectionObserver2.1 Inter

JS纯前端实现浏览器语音播报、朗读功能的完整代码

《JS纯前端实现浏览器语音播报、朗读功能的完整代码》在现代互联网的发展中,语音技术正逐渐成为改变用户体验的重要一环,下面:本文主要介绍JS纯前端实现浏览器语音播报、朗读功能的相关资料,文中通过代码... 目录一、朗读单条文本:① 语音自选参数,按钮控制语音:② 效果图:二、朗读多条文本:① 语音有默认值:②

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

C#自动化实现检测并删除PDF文件中的空白页面

《C#自动化实现检测并删除PDF文件中的空白页面》PDF文档在日常工作和生活中扮演着重要的角色,本文将深入探讨如何使用C#编程语言,结合强大的PDF处理库,自动化地检测并删除PDF文件中的空白页面,感... 目录理解PDF空白页的定义与挑战引入Spire.PDF for .NET库核心实现:检测并删除空白页

使用Node.js和PostgreSQL构建数据库应用

《使用Node.js和PostgreSQL构建数据库应用》PostgreSQL是一个功能强大的开源关系型数据库,而Node.js是构建高效网络应用的理想平台,结合这两个技术,我们可以创建出色的数据驱动... 目录初始化项目与安装依赖建立数据库连接执行CRUD操作查询数据插入数据更新数据删除数据完整示例与最佳

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

Go语言并发之通知退出机制的实现

《Go语言并发之通知退出机制的实现》本文主要介绍了Go语言并发之通知退出机制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、通知退出机制1.1 进程/main函数退出1.2 通过channel退出1.3 通过cont

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

使用Python获取JS加载的数据的多种实现方法

《使用Python获取JS加载的数据的多种实现方法》在当今的互联网时代,网页数据的动态加载已经成为一种常见的技术手段,许多现代网站通过JavaScript(JS)动态加载内容,这使得传统的静态网页爬取... 目录引言一、动态 网页与js加载数据的原理二、python爬取JS加载数据的方法(一)分析网络请求1