基于jquery的模态div层弹出效果

下面是“基于jQuery的模态div层弹出效果”的完整攻略:

1. 准备工作

首先,在你的网站中引入jQuery库:

<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>

2. HTML结构

其次,我们需要在HTML中定义一个模态框:

<!-- 模态框外层容器 -->
<div class="modal-container">
  <!-- 模态框 -->
  <div class="modal-box">
    <!-- 关闭按钮 -->
    <span class="modal-close">&times;</span>
    <!-- 模态框内容 -->
    <div class="modal-content">
      这里可以填写模态框的内容
    </div>
  </div>
</div>

3. CSS样式

接下来,我们需要定义模态框和关闭按钮的样式:

/* 模态框外层容器 */
.modal-container {
  display: none; /* 默认不显示 */
  position: fixed; /* 固定定位 */
  z-index: 100; /* 设置层级 */
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, .5); /* 半透明背景 */
}

/* 模态框 */
.modal-box {
  position: absolute;
  top: 50%; /* 距离顶部50% */
  left: 50%; /* 距离左边50% */
  transform: translate(-50%, -50%); /* 居中 */
  width: 80%; /* 宽度为80% */
  max-width: 600px; /* 最大宽度为600px */
  background-color: #fff; /* 背景色 */
  border-radius: 5px; /* 圆角 */
  padding: 20px; /* 内边距 */
  box-shadow: 0 0 10px rgba(0, 0, 0, .3); /* 阴影 */
}

/* 关闭按钮 */
.modal-close {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 26px;
  cursor: pointer;
}

4. JavaScript代码

最后,我们需要编写JavaScript代码来实现点击按钮显示模态框,并且点击关闭按钮隐藏模态框:

// 点击按钮显示模态框
$('#openModalBtn').click(function() {
  $('.modal-container').show();
});

// 点击关闭按钮隐藏模态框
$('.modal-close').click(function() {
  $('.modal-container').hide();
});

其中,#openModalBtn表示一个按钮的ID,我们可以根据实际情况进行修改。

示例

下面是两个示例:

示例1

在一个图片上添加一个“查看大图”按钮,点击按钮后弹出模态框显示大图:

<img src="https://cdn.example.com/image.jpg" alt="image" style="max-width: 100%;">
<button id="openModalBtn">查看大图</button>

<!-- 模态框 -->
<div class="modal-container">
  <div class="modal-box">
    <span class="modal-close">&times;</span>
    <div class="modal-content">
      <img src="https://cdn.example.com/image.jpg" alt="image" style="max-width: 100%;">
    </div>
  </div>
</div>

<script>
  $('#openModalBtn').click(function() {
    $('.modal-container').show();
  });

  $('.modal-close').click(function() {
    $('.modal-container').hide();
  });
</script>

示例2

在一个表单中添加一个“提交”按钮,如果有未填写项,弹出模态框提示用户:

<form>
  <div class="form-group">
    <label for="name">姓名</label>
    <input type="text" id="name" class="form-control">
  </div>
  <div class="form-group">
    <label for="age">年龄</label>
    <input type="text" id="age" class="form-control">
  </div>
  <!-- 其他表单项省略 -->
  <button id="submitBtn">提交</button>
</form>

<!-- 模态框 -->
<div class="modal-container">
  <div class="modal-box">
    <span class="modal-close">&times;</span>
    <div class="modal-content">
      请填写完整的表单
    </div>
  </div>
</div>

<script>
  $('#submitBtn').click(function() {
    // 判断表单是否填写完整
    var name = $('#name').val();
    var age = $('#age').val();
    if (!name || !age) {
      $('.modal-container').show();
      return false;
    }
    // 表单填写完整,提交表单
    $('form').submit();
  });

  $('.modal-close').click(function() {
    $('.modal-container').hide();
  });
</script>

希望这些示例能够帮助你了解如何在自己的网站中嵌入模态框。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于jquery的模态div层弹出效果 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • jQuery UI Spinner destroy()方法

    jQuery UI 的 Spinner 组件提供了一个 destroy() 方法,该方法用于销毁 Spinner 实例。在本教程中,我们将详细介绍 Spinner 的 destroy() 方法的使用方法。 destroy() 方法基本语法如下: $( ".selector" ).spinner( "destroy" )…

    jquery 2023年5月11日
    00
  • spring boot集成WebSocket日志实时输出到web页面

    下面我将详细讲解“spring boot集成WebSocket日志实时输出到web页面”的完整攻略。 1. 准备工作 在开始实现前,需要确保你已经具有以下技术栈的了解和掌握: Java Spring Boot WebSocket HTML、CSS、JavaScript 2. 添加依赖 我们首先需要在项目中添加WebSocket相关依赖: <depend…

    jquery 2023年5月27日
    00
  • jQuery Ajax 上传文件处理方式介绍(推荐)

    下面是“jQuery Ajax 上传文件处理方式介绍(推荐)”的完整攻略: 简介 在 Web 开发中,实现文件上传功能是非常常见的需求。jQuery Ajax 提供了方便的 API,可以帮助我们实现简单、便捷的文件上传功能。 本文将介绍如何使用 jQuery Ajax 进行文件上传,并提供两个示例来展示具体使用方法。 jQuery Ajax 上传文件的处理方…

    jquery 2023年5月27日
    00
  • JQuery获取元素尺寸、位置及页面滚动事件应用示例

    下面是对于“JQuery获取元素尺寸、位置及页面滚动事件应用示例”的详细攻略: 获取元素的尺寸和位置 JQuery提供了许多方法可以用来获取元素的尺寸和位置,这些方法常用于响应式设计和交互效果的实现。 获取元素尺寸 width方法:获取元素内容区域的宽度。 height方法:获取元素内容区域的高度。 innerWidth方法:获取元素包括内边距(paddin…

    jquery 2023年5月28日
    00
  • jQuery将表单序列化成一个Object对象的实例

    下面我来详细讲解一下“jQuery将表单序列化成一个Object对象的实例”的完整攻略。 什么是表单序列化? 表单序列化(Form Serialization)是将表单中的数据以一定的格式存储到一个字符串中,方便提交给服务器进行处理。表单序列化的常用格式有两种:URL-encoded和JSON格式。 jQuery的serialize()方法 jQuery中提…

    jquery 2023年5月28日
    00
  • jQWidgets jqxListBox valueMember属性

    jQWidgets jqxListBox valueMember属性详解 jQWidgets是一个基于jQuery的UI组件库,提供了丰富UI组件工具包。ListBox是其中之一。本文将详细介绍jqxListBox的valueMember属性,包括定义、语法和示例。 valueMember属性的定义 jqxListBox的valueMember属性用于设置列…

    jquery 2023年5月10日
    00
  • 如何用jQuery来区分鼠标左键和右键

    jQuery 是一种流行的 JavaScript 库,它使得编写高效的代码变得更加简单。在本文中,我将为您提供如何使用 jQuery 区分鼠标左键和右键的完整攻略。 捕获鼠标点击事件 首先,我们需要用 jQuery 捕获鼠标点击事件。我们可以通过 .click() 方法简单地实现。 $(document).click(function(event) { //…

    jquery 2023年5月12日
    00
  • ASP.NET MVC中使用jQuery时的浏览器缓存问题详解

    ASP.NET MVC中使用jQuery时的浏览器缓存问题是一个常见的面临的问题,使用jQuery发送请求时,浏览器会缓存GET请求的响应结果,导致在一些情况下出现不必要的问题。本文将详细介绍如何有效地解决这个问题。 问题分析 在使用jQuery发送GET请求时,浏览器默认会缓存响应结果,这就导致了在发送请求时服务器并不一定会收到请求,并且响应也未必是最新的…

    jquery 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部