html全屏/退出全屏按钮,以及监听Esc退出后按钮样式变更

全屏和退出全屏引用了layui里面的icon标签,也可以使用自己的图片,都可以。

html:

<div id="screenDiv">
	<!-- 以下是layui里图标的写法,可以换成自己的图片 -->
    <i class="layui-icon layui-icon-screen-full" id="fullScreenIcon"></i>
    <i class="layui-icon layui-icon-screen-restore" id="restoreScreenIcon"></i>
</div>

css:

#fullScreenIcon,#restoreScreenIcon{
    position: relative;
    width: 100%;
    height: 100%;
    color: #00e7ff;
    font-size: 2vw;
    cursor: pointer;
}
#restoreScreenIcon{
    display: none;
}

样式预览:
在这里插入图片描述
在这里插入图片描述

js:

/**
     * 全屏点击事件
     */
    $("#fullScreenIcon").click(function () {
        let de = document.documentElement;

        if (de.requestFullscreen) {
            de.requestFullscreen().then();
        } else if (de.mozRequestFullScreen) {
            de.mozRequestFullScreen();
        } else if (de.webkitRequestFullScreen) {
            de.webkitRequestFullScreen();
        } else if (de.msRequestFullscreen) {
            de.msRequestFullscreen();
        }else {
            console.log("当前浏览器不支持全屏!");
            return false;
        }
        $(this).fadeOut(0);
        $(this).next().fadeIn(0);
    });
    
    /**
    *退出全屏点击事件
    */
    $("#restoreScreenIcon").click(function () {
        if(document.exitFullscreen) {
            document.exitFullscreen().then();
        } else if(document.mozCancelFullScreen) {
            document.mozCancelFullScreen();
        } else if(document.webkitExitFullscreen) {
            document.webkitExitFullscreen();
        }
        $(this).fadeOut(0);
        $(this).prev().fadeIn(0);
    });

	/**
	* 监听全屏/退出全屏效果事件
	*/	
    document.addEventListener("fullscreenchange", function( event ) {
        if (document.fullscreenElement) {
            if ($("#fullScreenIcon").next().css("display") == "none"){
                $("#fullScreenIcon").fadeOut(0);
                $("#fullScreenIcon").next().fadeIn(0);
            }
        } else {
            if ($("#fullScreenIcon").css("display") == "none"){
                $("#fullScreenIcon").fadeIn(0);
                $("#fullScreenIcon").next().fadeOut(0);
            }
    }});

加上全屏变更监听事件,就可以监听到Esc退出全屏事件,可以变更全屏按钮的样式。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值