js点击或者双击页面使其全屏,并且内容自适应

直接上代码

   const fullscreenModule = document.getElementById('scale');

   fullscreenModule.addEventListener('dblclick or click', function (e) {
        if (!document.fullscreenElement) {
            if (fullscreenModule.requestFullscreen) {
                fullscreenModule.requestFullscreen();
            } else if (fullscreenModule1.webkitRequestFullscreen) { /* Safari */
                fullscreenModule.webkitRequestFullscreen();
            } else if (fullscreenModule1.msRequestFullscreen) { /* IE11 */
                fullscreenModule.msRequestFullscreen();
            }
        } else {
            if (document.exitFullscreen) {
                document.exitFullscreen();
            } else if (document.webkitExitFullscreen) { /* Safari */
                document.webkitExitFullscreen();
            } else if (document.msExitFullscreen) { /* IE11 */
                document.msExitFullscreen();
            }
        }
    });

   监听页面是否全屏
    document.addEventListener('fullscreenchange', function () {
      if (document.fullscreenElement) {
        console.log('页面已进入全屏状态');
      } else {
        console.log('页面已退出全屏状态');
      }
    });

全屏之后如果你页面的字体大小,或者div的大小没变的话,那肯定是你的布局没有用rem,百分比啥自适应的布局

最简单的方法就是,换成rem布局

html {
    font-size: 16px;
}
body {
    font-size: 1rem;
}

记住 1rem = 16px  如果你的宽是32px,那么直接写成2rem

然后当你全屏操作的时候就可以这样

 if (!document.fullscreenElement) {
        $('html').css('font-size', '29px')
    } else {
        $('html').css('font-size', '16px')
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个基于原生JavaScript实现的PC端鼠标双击全屏的代码: ```javascript var isFullScreen = false; // 是否全屏标识 document.addEventListener('dblclick', function () { var docElm = document.documentElement; if (!isFullScreen) { if (docElm.requestFullscreen) { docElm.requestFullscreen(); } else if (docElm.mozRequestFullScreen) { docElm.mozRequestFullScreen(); } else if (docElm.webkitRequestFullScreen) { docElm.webkitRequestFullScreen(); } else if (docElm.msRequestFullscreen) { docElm.msRequestFullscreen(); } isFullScreen = true; } else { if (document.exitFullscreen) { document.exitFullscreen(); } else if (document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if (document.webkitCancelFullScreen) { document.webkitCancelFullScreen(); } else if (document.msExitFullscreen) { document.msExitFullscreen(); } isFullScreen = false; } }); ``` 在上述代码中,我们使用`document.addEventListener('dblclick', function () {...})`为整个文档添加了双击事件监听器。当用户双击屏幕时,我们会检查当前是否全屏,如果不是则尝试进入全屏状态,否则退出全屏状态。 在进入全屏状态时,我们使用以下方法: - `docElm.requestFullscreen()`是W3C的全屏API,用于请求进入全屏状态; - `docElm.mozRequestFullScreen()`是Firefox浏览器的全屏API; - `docElm.webkitRequestFullScreen()`是Chrome和Safari浏览器的全屏API; - `docElm.msRequestFullscreen()`是IE和Edge浏览器的全屏API。 在退出全屏状态时,我们使用以下方法: - `document.exitFullscreen()`是W3C的全屏API,用于退出全屏状态; - `document.mozCancelFullScreen()`是Firefox浏览器的全屏API; - `document.webkitCancelFullScreen()`是Chrome和Safari浏览器的全屏API; - `document.msExitFullscreen()`是IE和Edge浏览器的全屏API。 值得一提的是,我们使用了一个名为`isFullScreen`的变量来标识当前是否全屏。这个变量的初值为`false`,在进入和退出全屏状态时,我们都会更新它的值。这样做是为了确保在同一次双击事件中,进入和退出全屏状态只能执行其中的一个。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值