色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

vue中實現全屏以及對退出全屏的監聽

瀏覽:5日期:2022-09-28 09:50:41
目錄前言: 實現步驟:完整源碼:更多資料:前言:

vue中實現默認進來頁面,某個div全屏,并監聽退出全屏的次數,當退出全屏次數達到5的時候跳轉到別的頁面。

實現步驟:

1、頁面上在你想要的容器上加上id = ‘con_lf_top_div’,再給他加個動態class名,加上提示和點擊進入全屏按鈕

vue中實現全屏以及對退出全屏的監聽

<template> <el-card shadow='never' v-loading.fullscreen.lock='loading' : > <p style='color:red;'>*溫馨提示:請在全屏下進行考試,退出全屏5次以后將禁止考試</p> <el-button v-if='fullscreen' @click='screen();screen()' style='position: absolute;top: 0px;right: 0;'>全屏</el-button> ...其他內容

2、css部分,全屏后的部分需要單獨加樣式

.isScreen{ height:100vh!important; overflow-y: auto; }

3、js部分

data:

fullscreen:false,//是否全屏goCount:0 //退出第幾次

mounted初始化調用

mounted() { this.initScreen()}

methods定義方法:

vue中實現全屏以及對退出全屏的監聽

//初始化全屏方法 initScreen(){this.goCount = 0this.screen() //打開全屏window.addEventListener(’keydown’, function(event) { //禁掉F11的全屏的默認事件,不會禁止F11的退出全屏 const e = event || window.event if (e && e.keyCode === 122) { e.preventDefault() }})document.addEventListener(’fullscreenchange’, v => { if(this.fullscreen == true){ this.fullscreen = false }else{ this.goCount++ // this.$message.info(’當前是退出第’+this.goCount+’次’) console.log(’當前是退出第’+this.goCount+’次’) this.fullscreen = true if(this.goCount == 5){ this.goBack() } }}) },

vue中實現全屏以及對退出全屏的監聽

vue中實現全屏以及對退出全屏的監聽

完整源碼:

1、頁面:<el-card : > <p style='color:red;'>*溫馨提示:請在全屏下進行考試,退出全屏5次以后將禁止考試</p> <el-button v-if='fullscreen' @click='screen();screen()' style='position: absolute;top: 0px;right: 0;'>全屏</el-button> ... 2、data:fullscreen:false,//是否全屏goCount:0 //退出第幾次 3、mounted:this.initScreen() 4、methods: //初始化全屏方法initScreen(){ this.goCount = 0 this.screen() //打開全屏 window.addEventListener(’keydown’, function(event) { //禁掉F11的全屏的默認事件,不會禁止F11的退出全屏 const e = event || window.event if (e && e.keyCode === 122) { e.preventDefault() } }) document.addEventListener(’fullscreenchange’, v => { if(this.fullscreen == true){ this.fullscreen = false }else{ this.goCount++ // 注意這里的事件都會觸發兩次 console.log(’當前是退出第’+this.goCount+’次’) this.fullscreen = true if(this.goCount == 5){ this.goBack() } } })},//全屏方法screen(){ //設置后就是id==con_lf_top_div 的容器全屏 let element = document.getElementById(’con_lf_top_div’); if (this.fullscreen) { if (document.exitFullscreen) {document.exitFullscreen(); } else if (document.webkitCancelFullScreen) {document.webkitCancelFullScreen(); } else if (document.mozCancelFullScreen) {document.mozCancelFullScreen(); } else if (document.msExitFullscreen) {document.msExitFullscreen(); } } else { if (element.requestFullscreen) {element.requestFullscreen(); } else if (element.webkitRequestFullScreen) {element.webkitRequestFullScreen(); } else if (element.mozRequestFullScreen) {element.mozRequestFullScreen(); } else if (element.msRequestFullscreen) {// IE11element.msRequestFullscreen(); } } this.fullscreen = !this.fullscreen; },//退出全屏方法goBack(){ //111111111111111111111111111111111111111 this.$message.error(’您已退出全屏5次,當前考試已經結束’) this.$router.go(-1)},更多資料:

https://blog.csdn.net/qq_41619796/article/details/104751814

https://blog.csdn.net/wangsiyisiyi/article/details/117086453

到此這篇關于vue中實現全屏以及對退出全屏的監聽的文章就介紹到這了,更多相關vue中實現全屏以及對退出全屏的監聽內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Vue
相關文章:
主站蜘蛛池模板: 一级特黄性色生活片一区二区 | 欧美一级鲁丝片免费看 | 亚洲理论欧美理论在线观看 | 亚洲欧洲一二三区机械有限公司 | 久久精品a亚洲国产v高清不卡 | 亚洲作爱视频 | 兔子先生节目在线观看免费 | 欧美性视频xxxxxxxx | 欧美大尺码毛片 | 日韩区在线 | 中文国产成人精品久久久 | 三级网站国产 | 亚洲一级特黄特黄的大片 | 国产一区自拍视频 | 香蕉成人国产精品免费看网站 | 国产精品午夜性视频 | 日本理论片午夜论片 | 久久久久在线 | 一级毛片真人不卡免费播 | 久久精品全国免费观看国产 | 伊人久热这里只有精品视频99 | 欧美日韩精品一区二区在线线 | 日本九六视频 | 国产丶欧美丶日韩丶不卡影视 | 日韩毛片高清免费 | 美女扒开腿让男人桶爽免费动态图 | 国产女人在线观看 | 精品国产一区二区三区免费看 | 一级aaa毛片| 欧美视频在线观看 | 九九这里只精品视在线99 | 成年女人免费视频 | 中文国产成人精品久久水 | 国产91精品久久久久久久 | 国产在线欧美日韩精品一区二区 | 日韩三级中文字幕 | 成年人在线免费 | 一级作爱视频免费观看 | 亚洲免费一级视频 | 日韩激情中文字幕一区二区 | 久久国内精品自在自线软件 |