浏览器网页全屏怎么退出(网页全屏怎么退出)

时间:2024-01-05 14:05:48 来源:网友整理 编辑:牛奶煮萝莉

JavaScript 实现点击/关闭全屏

#头条创作挑战赛#

本文同步本人掘金平台的文章:https://juejin/post/7135830434528624654

今天,我们来探讨的问题是:

当点击图片的时候,我们需要其全屏展示,当我们再次点击的时候,图片退出全屏播放。

PS: 我们退出全屏播放的情况一般是按 esc 退出。图片可以延伸到任何的 DOM 节点

在文末,我会将问题升级,留一个题目给读者思考

图片全屏,这个跟文章全屏的效果一样,比如下面的文章全屏:

就是一个元素铺平整个屏幕

思路

那么,问题我们知道了。解决问题的思路是怎么样的呢?

我们获取到图片元素的 DOM 节点我们调用全屏的函数进行全屏展示浏览器监听点击事件,当图片是全屏的状态,再次点击图片的时候,调用函数退出全屏

好了,思路有了,我们来实现下。

具体实现

假设我们有 html 代码如下:

<img id="image" src="path/to/image.postfix" alt="img" />复制代码

现在我们编写下 javascript 代码。

// 退出全屏ngAfterViewInit() { const image = document.getElementById('image'); image.addEventListener('click', (event: any) => { if(document.fullscreenElement === image) { document.exitFullscreen(); } event.preventDefault(); })}// 全屏查看public fullscreenView(): void { const image = document.getElementById('image'); image.requestFullscreen()} 复制代码

这里我用了 typescript 来编写

当然,上面的代码并没有考虑相关的兼容性。

requestFullscreen 和 exitFullscreen 方法对现代的浏览器支持还是很可以的,在 PC 端上展示毫无压力。

但是,我们还是得对代码进行浏览器兼容写法:

这里我新建了个 utils.ts 的文件:

export class Utils { public static gotoFullscreen(dom: any): void { if (dom.requestFullscreen) { dom.requestFullscreen() } else if (dom.mozRequestFullScreen) { dom.mozRequestFullScreen() } else if (dom.webkitRequestFullscreen) { dom.webkitRequestFullscreen() } else if (dom.msRequestFullscreen) { dom.msRequestFullscreen() } else { console.error('当前浏览器不支持部分全屏!') } } public static exitFullscreen(dom: any): void { if (dom.exitFullscreen) { dom.exitFullscreen() } else if (dom.webkitExitFullscreen) { dom.webkitExitFullscreen() } else if (dom.msExitFullscreen) { dom.msExitFullscreen() } }}复制代码

上面两个方法都是静态方法,调用方式 类名.静态方法,比如:Utils.gotoFullscreen(dom)。

问题升级

单点击图片,我们需要其全屏展示。然后设置全屏时候,右上角有一个退出的按钮。点击退出按钮,退出全屏展示。

感兴趣的读者可以先自己尝试下。

这里我给出简单的思路,可以作为参考。

答案(点击展开)

1. 设定布局,将一个 div 包裹图片2. 在 div 中设置一个按钮的元素 button,并对 button 进行 css 布局3. 在图片全屏的时候,显示 button,并对 button 进行按钮事件(调用退出全屏的函数)复制代码

你学废了?

如果读者觉得文章还可以,不防一键三连:关注➕点赞➕收藏

JavaScript 实现点击/关闭全屏

#头条创作挑战赛#

本文同步本人掘金平台的文章:https://juejin/post/7135830434528624654

今天,我们来探讨的问题是:

当点击图片的时候,我们需要其全屏展示,当我们再次点击的时候,图片退出全屏播放。

PS: 我们退出全屏播放的情况一般是按 esc 退出。图片可以延伸到任何的 DOM 节点

在文末,我会将问题升级,留一个题目给读者思考

图片全屏,这个跟文章全屏的效果一样,比如下面的文章全屏:

就是一个元素铺平整个屏幕

思路

那么,问题我们知道了。解决问题的思路是怎么样的呢?

我们获取到图片元素的 DOM 节点我们调用全屏的函数进行全屏展示浏览器监听点击事件,当图片是全屏的状态,再次点击图片的时候,调用函数退出全屏

好了,思路有了,我们来实现下。

具体实现

假设我们有 html 代码如下:

<img id="image" src="path/to/image.postfix" alt="img" />复制代码

现在我们编写下 javascript 代码。

// 退出全屏ngAfterViewInit() { const image = document.getElementById('image'); image.addEventListener('click', (event: any) => { if(document.fullscreenElement === image) { document.exitFullscreen(); } event.preventDefault(); })}// 全屏查看public fullscreenView(): void { const image = document.getElementById('image'); image.requestFullscreen()} 复制代码

这里我用了 typescript 来编写

当然,上面的代码并没有考虑相关的兼容性。

requestFullscreen 和 exitFullscreen 方法对现代的浏览器支持还是很可以的,在 PC 端上展示毫无压力。

但是,我们还是得对代码进行浏览器兼容写法:

这里我新建了个 utils.ts 的文件:

export class Utils { public static gotoFullscreen(dom: any): void { if (dom.requestFullscreen) { dom.requestFullscreen() } else if (dom.mozRequestFullScreen) { dom.mozRequestFullScreen() } else if (dom.webkitRequestFullscreen) { dom.webkitRequestFullscreen() } else if (dom.msRequestFullscreen) { dom.msRequestFullscreen() } else { console.error('当前浏览器不支持部分全屏!') } } public static exitFullscreen(dom: any): void { if (dom.exitFullscreen) { dom.exitFullscreen() } else if (dom.webkitExitFullscreen) { dom.webkitExitFullscreen() } else if (dom.msExitFullscreen) { dom.msExitFullscreen() } }}复制代码

上面两个方法都是静态方法,调用方式 类名.静态方法,比如:Utils.gotoFullscreen(dom)。

问题升级

单点击图片,我们需要其全屏展示。然后设置全屏时候,右上角有一个退出的按钮。点击退出按钮,退出全屏展示。

感兴趣的读者可以先自己尝试下。

这里我给出简单的思路,可以作为参考。

答案(点击展开)

1. 设定布局,将一个 div 包裹图片2. 在 div 中设置一个按钮的元素 button,并对 button 进行 css 布局3. 在图片全屏的时候,显示 button,并对 button 进行按钮事件(调用退出全屏的函数)复制代码

你学废了?

如果读者觉得文章还可以,不防一键三连:关注➕点赞➕收藏

Reno5系列用机小技巧:这两个功能如此实用

OPPO Reno5系列已经开售一段时间了,相信不少朋友都已经拿到手机了。Reno5系列搭载了OPPO最新的ColorOS 11系统。ColorOS 11进行了大幅升级,在提升系统界面视觉效果的同时,还具有很有实用小功能。其中远程守护和屏幕分享是十分值得关注的功能,可以满足你对家人的守护需求,我们一起来体验一下。

远程守护:使用方便,功能实用

使用OPPO Reno5系列的远程守护功能很简单,只需打开系统内置的远程守护APP,通过扫码的方式绑定手机即可。比如你可以把你的手机和父母的绑定,这样你就能时刻了解家人的动态。

完成绑定后,打开远程守护APP就能看到被守护人手机的基本信息,包括今天走路步数、手机电量,还有就是家人的实时位置和应用使用时间、安全事件等,这些关键的信息都能在APP首页直接看到。

你可以通过守护设置来修改需要关注的内容,可以取消关注应用使用情况、手机安全事件等,过滤掉你不需要关心的信息,降低干扰。

远程守护功能除了可以让你看到家人的相关信息,还提供了丰富可自定义的关怀功能。你可以为家人手动圈定一个守护范围,当家人的实时位置超出设定范围时,你就会及时收到提醒,时刻掌握家人情况。

比如你家孩子出去玩,你一看手机就知道孩子在哪里,还可以通过APP上的呼叫功能直接联系,一切都在掌握中。

在远程守护APP中,你可以限制被守护人手机某个应用的可用时长。比如你设置了某个游戏只能用1个小时,在使用指定应用超时后,应用便会自动退出,可以有效防止孩子沉迷游戏或者其它手机应用。

你还能够设置手机在某个时间段为停用状态,其它应用均为不可用状态,仅保留电话、短信、设置可以使用。你可以把孩子上课期间都设置为停用状态,这样就不用担心孩子上课时间玩手机,这种模式下也可以单独允许某个应用例外,可以满足不同场景的需求。

当手机进入停用状态,桌面受限制的应用会变成暗灰色,点击应用可以申请解除限制。比如孩子上课需要用到某个应用,可以申请解除限制,守护人在手机上同意即可使用,日常使用更加灵活。

值得一提的是,当守护人更改其它控制功能时,同样需要被守护人在手机上同意才能完成操作。此前已经同意的控制设置会在对应时间段自动执行,不再需要申请同意,在考虑人性化的同时,也能够减少操作步骤。

远程守护APP还可以检测到被守护人手机的电话、支付风险、手机病毒等安全问题,你在手机远程上就能帮忙处理风险问题,对于不太懂手机的家人来说,这个功能非常实用。

屏幕分享:远程解决问题,还有新玩法

OPPO Reno5系列内置屏幕分享功能,通过该功能可以远程操作家人的手机,帮助家人解决各种手机问题。

在系统设置的连接共享页面就能找到屏幕共享功能,点击发起共享,输入对方OPPO账号的手机号码就能发起屏幕共享,操作简单。接受邀请的一方会出现弹窗,接受邀请即可。

成功连接屏幕共享后,可以授权对方操作手机,这样你就可以为家人安装更新软件、设置闹钟、添加通讯录联系人等,家人遇到手机操作难题也不用愁了。你还可以开启显示操作轨迹功能,这样家人就能够看到你的每一步操作,更加生动地教家人学习新功能。

在进行屏幕共享的同时,还支持开启语音通话,可以随时和家人聊天沟通,更加方便。

OPPO Reno5系列的屏幕分享功能不仅能够解决问题,还能实现一些有趣的玩法。比如异地情侣,可以通过OPPO Reno5系列的屏幕分享功能一起追剧看电影等。

屏幕分享功能支持同步视频分享,一台手机播放,两个人就能看同一部电影。受邀方可以点击放大全屏 ,这样就更有沉浸感。你还可以通过语音通话功能实时讨论剧情,仿佛两个人就在一起看电影,增添了温暖,更加温馨有爱。

通过屏幕分享功能,你还可以在远程和家人朋友一边分享照片一边聊天,即使相隔千里也能感受到彼此的温暖。类似的场景还有非常多,屏幕分享功能提供了一个很好的拉近距离方式,有趣的同时也很方便。

在实际体验中,屏幕分享功能即使在不同网络下,画面延迟也不会特别高,可用性非常好。当然,你要想获得更好的体验,最好能够保证比较好的网络条件。

OPPO Reno5系列所自带的远程守护、屏幕分享功能都相当实用,可以让你为家人增添多一份守护,时刻关注家人。即使没有陪伴在家人的身边,通过远程守护功能可以让你更加安心。

屏幕分享功能很好解决了家人遇到的各种手机问题,远程就能快速解决,更加方便。在科技时代,让不太懂手机的老年人也能更容易享受科技带来的便利,这也体现了OPPO在做产品时候在人文关怀方面的思考。

如果你在用OPPO Reno5系列,不妨尝试一下远程守护和屏幕分享功能,可以助你应对更多场景,带来更多乐趣和更加省心的使用体验。

声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送至邮件举报,一经查实,本站将立刻删除。转载务必注明出处:http://www.hixs.net/article/20240105/169625375780275.html