esc键退出全屏 vue_vue项目实现全屏,退出全屏,图标切换的解决方案
vue项目实现全屏,退出全屏,图标切换的解决方案
vue项目点击按钮实现全屏很容易,点击按钮退出全屏也很容易。
fullScreen(){
var element=document.documentElement;
if (element.requestFullscreen) {
element.requestFullscreen();
} else if (element.msRequestFullscreen) {
element.msRequestFullscreen();
} else if (element.mozRequestFullScreen) {
element.mozRequestFullScreen();
} else if (element.webkitRequestFullscreen) {
element.webkitRequestFullscreen();
}
},
exitFullScreen(){
if (document.exitFullscreen) {
document.exitFullscreen();
} else if (document.msExitFullscreen) {
document.msExitFullscreen();
} else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if (document.webkitExitFullscreen) {
document.webkitExitFullscreen();
};
}
现在的问题是:退出全屏有多种方式:有通过点击退出全屏按钮,有按Esc键,还有鼠标移动到中间顶部显示的那个关闭按钮 ,我们的要求是退出全屏要变换图标和显示的字。
解决方法:监听屏幕变化,一旦变化变判断是否全屏,从而实现图标正常切换。
一:下载引入screenfull 插件
npm install screenfull --save
//在调用全屏功能的组件中引入
import screenfull from 'screenfull'
1234
二:定义全屏切换函数
toggleFullscreen () {
if(!screenfull.isEnabled){ //判断一下浏览器是否支持全屏显示
this.$message({
message:'浏览器不能全屏',
type:'warning'
})
return false
}
screenfull.toggle() //进行全屏切换
},
12345678910
三:调用切换全屏函数
123456
四:监听窗口大小变化,判断是否全屏
// 监听窗口大小改变,screenfull.isFullscreen的值为是否全屏,若是则true,反之false
window.onresize = () => {
this.isScreenFull = screenfull.isFullscreen
}
完整代码:
import screenfull from 'screenfull' //全屏功能
export default {
data () {
return {
isScreenFull:false //是否全屏
}
},
mounted () {
// 监听窗口大小改变,screenfull.isFullscreen的值为是否全屏,若是则true,反之false
window.onresize = () => {
this.isScreenFull = screenfull.isFullscreen
}
},
methods: {
toggleFullscreen () {
if(!screenfull.isEnabled){ //判断一下浏览器是否支持全屏显示
this.$message({
message:'浏览器不能全屏',
type:'warning'
})
return false
}
screenfull.toggle()
},
},
}
上一篇:vue中如何使用延时加载,import的重要作用 下一篇:vue中store.state、$store.state和this.$store.state的适用场景
esc键退出全屏 vue_vue项目实现全屏,退出全屏,图标切换的解决方案相关推荐
- esc键退出全屏 vue_vue中实现浏览器全屏与退出全屏功能
在 标签中主要是放一个全屏与退出全屏的按钮,并绑定上点击事件 fullScreenClick .全屏与退出全屏的按钮显示切换是通过变量 fullScreen 控制的. :content="f ...
- esc键退出全屏 vue_Js 网页全屏(vue)-2020-08-26-亲测兼容 F11、ESC的全屏操作
Js 网页全屏(vue) 效果描述 以下逻辑均正常 点击按钮全屏.点击按钮退出全屏.再点击按钮全屏 点击按钮全屏,F11 / ESC 退出全屏,点击按钮全屏 F11 进入全屏,点击按钮退出全屏 不同页 ...
- 全屏状态下的ESC键监听处理
我又来分享好东西了 直奔主题 今天分享的内容是页面的全屏功能(同时跳转页面) 这个的关键就是当全屏以后,我想通过按下esc键,同时进行一些处理,比如:当手动全屏的时候我跳转展示第三方的页面文件,取消全 ...
- React 全屏监听Esc键
全屏与退出全屏 if (isFull) {document.exitFullscreen();} else {tree.current.requestFullscreen();tree.current ...
- js实现浏览器全屏与退出全屏,解决chrome下F11进入全屏后退出全屏API方法失效
1. 问题说明 网页全屏和退出全屏其实已经算的上一个很常见的功能了,那是不是直接用HTML5全屏API就没什么问题了,但是不要忘了键盘上的F11有着同样的功能,实际使用的时候就发现F11使网页进入全屏 ...
- 按esc键退出的一个函数
1 function esckey(keycode) // 按esc键退出 2 { 3 if (keycode == 27 ) 4 ...
- MFC EDIT控件 接收“回车”与“ESC”键 退出问题!
在做MFC程序开发过程中,经常会出现DEIT控制按下了ENTER或者ESC键后,程序就会立刻退出(这是MFCR )实现的一种机制,但往往并不是我们想要的),今天教大家两种方法解决. 一 ...
- C# 控制台 模拟时间一秒一秒走动,直到按Esc键,时间静止,退出!
Code using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...
- Android 系统(153)---全面屏项目很多APP占不满全屏
全面屏项目很多APP占不满全屏 刘海屏项目,分辨率720x1498设置系统除外壁纸显示不全,且部分界面底部显示高度有2个navigationbar高度 解决方案: 那是因为全面屏的长宽比超过了1.86 ...
最新文章
- GraPhlAn绘制的超高颜值物种树Cladogram
- 使用RNNs进行机器翻译——介绍RNN和LSTM网络及其应用
- NR 5G 网络功能之AMF
- JZOJ 5050. 【GDOI2017模拟一试4.11】颜色树
- 以太坊智能合约编程之带菜鸟入门教程
- C/C++之预处理命令
- homebrew install php53
- 在微信浏览器字体被调大导致页面错乱的解决办法
- java createjpeg4_在linux下用java的JPEGCodec.createJPEGEncoder(bos)生成jpg图片问题
- Java--Socket客户端,服务端通信
- golang fmt.printf()
- MySQL驱动jar包的下载--保姆教程
- Qunee For Html5 开发清新、高效的拓扑图组件
- Excel 的进阶学习
- python pymysql mysql保存表情符
- 计算机开机显示器闪,电脑开机后显示器闪烁怎么办
- S2ANet(Align Deep Features for Oriented Object Detection)解读
- 深度学习工作站攒机指南
- Java并发编程的艺术pdf
- 【Matlab】基于改进的 Hausdorf 距离的DBSCAN船舶航迹聚类