HTML5 网络监听,全屏
1.网络状态监听
- online事件:网络重新连通时触发
- offline事件:网络断开时触发
<script>
// 监听网络连接
window.addEventListener("online",function(){
console.log("网络连通了")
})
// 监听网络断开
window.addEventListener("offline",function(){
console.log("网络断开了")
})
</script>
这个例子中,本来网络一直都是连通的,什么也不会触发。手动把网线拔了,控制台打印"网络断开了",说明触发了offline事件,接着手动连上网线,此时控制台又打印"网络连通了",说明触发了online事件
2.全屏接口
- HTML5的api可以将某个Dom元素全屏展示,通过api或者Esc键可退出全屏
- 也可以通过快捷按键让页面进入全屏(chrome,EDGE,火狐都素按F11切换全屏/退出全屏),两种模式是独立的,什么模式进入全屏,就需要对应模式的退出方式
- fullscreenchange事件用来监听全屏事件(仅限api模式,通过快捷按键的形式无法监听)
- document.fullscreenElement(IE11/msFullscreenElement)该属性返回当前处于全屏模式的DOM元素,可以根据他来判断是否进入了全屏模式
3.封装进入全屏和退出全屏的函数
- 封装一个兼容各个浏览器的全屏函数
<script>
// 封装进入全屏的函数
function fullScreen(node){
// 判断浏览器是否支持全屏api
if(document.fullscreenEnabled || document.msFullscreenEnabled){
// 判断是标准浏览器还是IE
if(node.requestFullscreen){
// chrome和火狐
node.requestFullscreen()
}else if(node.msRequestFullscreen){
// IE11
node.msRequestFullscreen()
}
}else{
alert("当前浏览器不支持全屏模式")
}
}
// 封装退出全屏的函数(直接esc键最简单)
function exitfullScreen(){
//判断是否已经进入全屏模式
var fullscreenElement = document.fullscreenElement || document.msFullscreenElement
if(!fullscreenElement){
//console.log("不是全屏状态")
return
}
// 确保在非全屏状态才调用下面的代码,不然会弹警告
if(document.exitFullscreen){
//标准浏览器
document.exitFullscreen()
}else if(document.msExitFullscreen){
//IE浏览器
document.msExitFullscreen()
}
}
</script>
- 如果确定要通过api让整个页面全屏,可以屏蔽浏览器自带的快捷按钮全屏(F11)
//屏蔽浏览器自带的全屏
window.addEventListener('keydown',function(e){
//如果按的是F11,则阻止默认事件
if(e.keyCode == 122){
e.preventDefault()
}
})
HTML5 网络监听,全屏的更多相关文章
- js监听全屏下的esc事件
window.onresize = function() { if (!checkFull()) { //触发esc事件,执行业务逻辑. } }; function checkFull() { var ...
- js监听全屏的事件
window.addEventListener('click',function(){ window.top.location.href = '../../loginOut.do'; //解决ifr ...
- 从零开始学 Web 之 HTML5(三)网络监听,全屏,文件读取,地理定位接口,应用程序缓存
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- html5 js 监听网络在线与离线
<!doctype html> <html> <head> <meta http-equiv="content-type" content ...
- H5C3--语义标签以及语义标签IE8兼容,表单元素新属性,度量器,自定义属性,dataList,网络监听,文件读取
HTML5新增标签以及HTML5新增的api 1.H5并不是新的语言,而是html语言的第五次重大修改--版本 2.支持:所有的主流浏览器都支持h5.(chrome,firefox,s ...
- iOS 网络监听、判断
一 网络监听 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary ...
- Android-Activity横竖屏切换不杀死Activity 并监听横竖屏切换
在上一篇博客,Android-Activity临时数据的保存,中讲解到,当发生横竖屏切换的时候,系统会杀死Activity并重新启动Activity 系统会杀死Activity 12-12 08:11 ...
- C#监听锁屏代码
今天,偶然间在技术群看有人问,怎么监听锁屏. 在此处记录一下 public class Constrctor { public Constrctor() { SystemEvents.SessionS ...
- iOS:Reachability网络监听
iOS利用Reachability确认网络环境3G/WIFI 开发Web等网络应用程序的时候,需要确认网络环境,连接情况等信息.如果没有处理它们,是不会通过Apple的审查的,一般情况下,可以把网络监 ...
- java实现网络监听
Java实现网络监听 import java.net.*; import java.io.*; public class tcpServer { public static void main(Str ...
随机推荐
- docker 修改容器内容后更新镜像的流程
在 Docker 中,如果你修改了一个容器的内容并希望将这些更改保存为一个新的镜像,可以按照以下步骤进行: docker version: 26.1 1. 确保容器运行 首先,确保你正在修改的容器是运 ...
- Java获取Object中Value的方法
在Java中,获取对象(Object)中的值通常依赖于对象的类型以及我们希望访问的属性.由于Java是一种静态类型语言,直接从一个Object类型中访问属性是不可能的,因为Object是所有类的超类, ...
- 阿里云Tomcat7配置域名详解
一. 进入阿里云服务控制台,点击SSL证书 看到下载了么,对应着你的域名点击下载服务器类型选择Tomcat,点击下载,压缩包中包含 xxxxx__test.com.pfx, pfx-password. ...
- ASP.NET Core OData 9的发布,放弃 .NET Framework
Microsoft 于 2024 年 8 月 30 日宣布推出 ASP.NET Core OData 9 包. 这个新包将ASP.NET Core与.NET 8 OData库保持一致,改变了OData ...
- JIT编译选项
JIT(Just-In-Time)优化在编译过程中有多种编译选项可以支持,不同语言和平台可能有不同的实现.以通用的 JIT 编译器为例,以下是一些常见的编译选项: 编译级别(Compilation L ...
- Android JIT
Android JIT(Just-In-Time)编译是一种动态编译技术,在运行时将字节码转换为机器码,以提高应用程序的执行效率.与静态编译不同,JIT编译是在应用程序运行时进行的,因此可以在程序执行 ...
- Android Perfetto 系列 1:Perfetto 工具简介
2019 年开始写 Systrace 系列,陆陆续续写了 20 多篇,从基本使用到各个模块在 Systrace 上的呈现,再到启动速度.流畅性等实战,基本上可以满足初级系统开发者和 App 开发者对于 ...
- 数据库运维实操优质文章分享(含Oracle、MySQL等) | 2023年6月刊
本文为大家整理了墨天轮数据社区2023年6月发布的优质技术文章/文档,主题涵盖Oracle.MySQL.PostgreSQL等数据库的安装配置.故障处理.性能优化等日常实践操作,以及常用脚本.注意事项 ...
- js中判断数据类型的方法有哪些
判断数据类型可以使用 typeof 但是typeof 判断数组和函数时返回的都是Object 不能具体判断,这时使用 instanceof 可以判断对象是否是另一个函数创造的 : 用法: typeof ...
- rabbitmq 新下载链接🔗
Linux下安装RabbitMQ需要依赖socat和erlang插件环境 1 插件下载 1.1 RabbitMQ下载 下载地址一:https://www.rabbitmq.com/download. ...