vue 支持部分全屏 支持点击ecs 关闭全屏

<template>

<div>

<div id="screen" @click="screen">Toggle Fullscreen</div>

</div>

</template>

<script>

export default {

data() {

return {

fullscreen: false

};

},

mounted() {

document.addEventListener('fullscreenchange', this.handleFullScreenChange);

document.addEventListener('keydown', this.handleKeyDown);

},

beforeDestroy() {

document.removeEventListener('fullscreenchange', this.handleFullScreenChange);

document.removeEventListener('keydown', this.handleKeyDown);

},

methods: {

handleFullScreenChange() {

if (!document.fullscreenElement) {

this.fullscreen = false;

}

},

handleKeyDown(event) {

if (event.key === 'Escape') {

if (this.fullscreen) {

this.exitFullScreen();

}

}

},

screen() {

let element = document.getElementById('screen');

if (this.fullscreen) {

this.exitFullScreen();

} else {

this.enterFullScreen(element);

}

this.fullscreen = !this.fullscreen;

},

enterFullScreen(element) {

if (element.requestFullscreen) {

element.requestFullscreen();

} else if (element.webkitRequestFullScreen) {

element.webkitRequestFullScreen();

} else if (element.mozRequestFullScreen) {

element.mozRequestFullScreen();

} else if (element.msRequestFullscreen) {

element.msRequestFullscreen();

}

},

exitFullScreen() {

if (document.exitFullscreen) {

document.exitFullscreen();

} else if (document.webkitCancelFullScreen) {

document.webkitCancelFullScreen();

} else if (document.mozCancelFullScreen) {

document.mozCancelFullScreen();

} else if (document.msExitFullscreen) {

document.msExitFullscreen();

}

}

}

};

</script>

相关推荐
前端双越老师22 分钟前
前端面试常见的 10 个场景题
前端·面试·求职
孟祥_成都1 小时前
【全网最通俗!新手到AI全栈开发必读】 AI 是如何进化到大模型的
前端·人工智能·全栈
牛奶2 小时前
AI辅助开发的基础概念
前端·人工智能·ai编程
摸鱼的春哥2 小时前
Agent教程15:认识LangChain,Agent框架的王(上)
前端·javascript·后端
明月_清风3 小时前
自定义右键菜单:在项目里实现“选中文字即刻生成新提示”
前端·javascript
明月_清风3 小时前
告别后端转换:高质量批量导出实战
前端·javascript
刘发财7 小时前
弃用html2pdf.js,这个html转pdf方案能力是它的几十倍
前端·javascript·github
牛奶10 小时前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶10 小时前
前端人为什么要学AI?
前端·人工智能·ai编程
Kagol12 小时前
🎉OpenTiny NEXT-SDK 重磅发布:四步把你的前端应用变成智能应用!
前端·开源·agent