用jQuery和HTML/CSS构建简洁 模式窗口

  • 源码大小:5.83KB
  • 所需积分:1积分
  • 源码编号:19JP-3586
  • 浏览次数:863次
  • 最后更新:2023年06月29日
  • 所属栏目:幻灯片
本站默认解压密码:19jp.com 或 19jp_com

简介

在网页设计中,你可以使用模态窗口做很多事情。它们非常有用,可以吸引网站访问者的注意力,并将其用于任何目的,如提醒对话框、登录表单、联系表单等。

在本教程中,我将向您展示如何使用HTML、CSS和一点jQuery来创建一个在单击时打开的最小的干净模式窗口。

如何使用它:

1.为模式窗口编写HTML代码。

  1. <div class="modal" id="example">
  2. <div class="inner_modal">
  3. <div class="modal_content">
  4. <h1>Modal Title</h1>
  5. <p>Modal Content</p>
  6. </div>
  7. </div>
  8. </div>

2.在页面上创建一个模式触发按钮。

  1. <button
  2. open-modal="true"
  3. modal-id="example">
  4. Open Modal
  5. </button>

3.设置背景覆盖的样式。

  1. .modal {
  2. width: 100vw;
  3. height: 100vh;
  4. background-color: rgba(16, 16, 16, 0.8);
  5. position: fixed;
  6. top: 0;
  7. z-index: 999;
  8. display: none;
  9. opacity: 0;
  10. }
  11.  
  12. .modal.active {
  13. display: block;
  14. opacity: 1;
  15. }
  16.  
  17. .modal .inner_modal {
  18. max-height: 100vh;
  19. box-sizing: border-box;
  20. display: block;
  21. overflow-y: auto;
  22. height: 100%;
  23. width: 100%;
  24. padding: 0 20px;
  25. }

4.设置模式窗口的主要内容的样式。

  1. .modal .modal_content {
  2. width: 600px;
  3. max-width: 100%;
  4. background-color: white;
  5. display: block;
  6. margin: 5vh auto;
  7. padding: 50px;
  8. }

5.当内容太长时,隐藏滚动条,但保留功能。

  1. .modal .inner_modal::-webkit-scrollbar {
  2. display: none;
  3. }

6.在文档中加载必要的jQuery JavaScript库。

  1. <script src="/path/to/cdn/jquery.slim.min.js"></script>

7.启用触发按钮以打开模式窗口。

  1. function closeModal(modal) {
  2. modal.removeClass('active');
  3. }
  4.  
  5. function openModal(modal) {
  6. modal.addClass('active');
  7. }
  8.  
  9. $('*[open-modal="true"]').click(function() {
  10. var modal = $(this).attr('modal-id');
  11. openModal($(`.modal#${modal}`));
  12. });
  13.  
  14. $('.modal').click(function(e) {
  15. var clickTarget = $(e.target);
  16. if (clickTarget.attr('class') == 'inner_modal') {
  17. closeModal(clickTarget.closest('.modal'));
  18. }
  19. });

预览截图