JS实现弹出DIV并让页面背景变暗

作者:异步漫步时间:2026-10-22 13:49:26浏览:150

本文介绍如何利用jQuery实现一个弹出DIV窗口,并通过添加半透明遮罩层使页面背景变暗。核心逻辑包含HTML结构定义、CSS样式设置以及JavaScript控制显示与隐藏,适用于需要聚焦用户注意力的场景。

HTML结构构建

第一步,构建一个用于覆盖页面的遮罩层div,随后定义一个用于展示的弹窗div。


<!-- 遮罩层 -->
<div id="cover" style="background: #000; position: absolute; left: 0px; top: 0px; width: 100%; filter: alpha(opacity=30); opacity: 0.3; display: none; z-index: 2 ">
  
</div>
<!-- 弹窗 -->
<div id="showdiv" style="width: 80%; margin: 0 auto; height: 9.5rem; border: 1px solid #999; display: none; position: absolute; top: 40%; left: 10%; z-index: 3; background: #fff">
  <!-- 标题 -->
  <div style="background: #F8F7F7; width: 100%; height: 2rem; font-size: 0.65rem; line-height: 2rem; border: 1px solid #999; text-align: center;" >
    提示
  </div>
  <!-- 内容 -->
  <div style="text-indent: 50px; height: 4rem; font-size: 0.5rem; padding: 0.5rem; line-height: 1rem; ">
    js弹窗 js弹出DIV,并使整个页面背景变暗</div>
  <!-- 按钮 -->
  <div style="background: #418BCA; width: 80%; margin: 0 auto; height: 1.5rem; line-height: 1.5rem; text-align: center;color: #fff;margin-top: 1rem; -moz-border-radius: .128rem; -webkit-border-radius: .128rem; border-radius: .128rem;font-size: .59733rem;" onclick="closeWindow()">
    确 定
  </div>
</div>

JavaScript逻辑实现

编写JavaScript脚本:(需引入jQuery库)


<script type="text/javascript">
  // 弹窗
  function showWindow() {
    $('#showdiv').show();  //显示弹窗
    $('#cover').css('display','block'); //显示遮罩层
    $('#cover').css('height',document.body.clientHeight+'px'); //设置遮罩层的高度为当前页面高度
  }
  // 关闭弹窗
  function closeWindow() {
    $('#showdiv').hide();  //隐藏弹窗
    $('#cover').css('display','none');   //显示遮罩层
  }
</script>

运行效果展示:

HTML结构构建

内容归纳

前述内容为笔者分享的JS弹窗及页面背景变暗功能的实现代码,旨在提供实用参考。若读者存在任何疑问,欢迎留言咨询,笔者将尽快予以回复!

作者最新文章