html+css+js实现dialog对话框

实现效果

HTML部分 

<span class="text">点击打开 Dialog</span><!-- 警告框 --><div class="alert"><div class="header"><i>X</i> </div><div class="content">确认关闭</div><div class="btns"><button class="cancel">取消</button><button class="sure">确定</button></div></div><!-- 模态框 --><!-- <div class="modal"><div class="header">提示<i>X</i> </div><div class="body">这是一段信息</div><div class="footer"><button class="cancel">取消</button><button class="sure">确定</button></div></div> -->

CSS部分

<style>*{margin: 0;padding: 0;box-sizing: border-box;}body{position: relative;/* background-color: #7f7f7f; */font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, SimSun, sans-serif;font-weight: 400;}span{color: #409eff;border: none;background: transparent;font-size: 18px;cursor: pointer;}span:hover{opacity: 0.7;}.modal{border-radius: 5px;margin: 80px auto;width: 500px;background-color: #fff;}.modal .header{display: flex;justify-content: space-between;height: 50px;padding: 20px 20px 10px 20px;}i{cursor: pointer;}.modal .body{padding: 30px 20px;height: 80px;color: #606266;font-size: 14px;word-break: break-all;}.modal .footer{text-align:right;padding: 10px 20px 20px 20px;height: 70px;}button{display: inline-block;width: 70px;height: 40px;background-color: #fff;border: 1px solid #dcdfe6;color: #606266;border-radius: 4px;cursor: pointer;}button.cancel:hover{border: 1px solid rgba(64, 158, 255, 0.1);background-color:rgba(64, 158, 255, 0.1);color: #409eff;}button.sure{color: #fff;background-color: #409eff;border-color: #409eff;margin-left: 20px;}button.sure:hover{opacity: 0.8;}i{font-style: normal;}.alert{display: none;position: absolute;left: 50%;top: 220px;transform: translateX(-50%);border-radius: 4px;width: 400px;background-color: #fff;}.alert .header{color: #606266;padding: 15px 20px 0 20px;height: 30px;text-align:right;}.alert .content{height: 50px;color: #606266;padding: 20px 20px 10px 20px;}.alert .btns{text-align: right;padding: 10px 20px 10px 20px;height: 50px;}.alert button{border-radius: 3px;width: 50px;height: 30px;}.alert .sure{margin-left: 15px;}</style>

JS部分

<script>// 1.创建模态框function Modal(title='',message=''){this.modalBox=document.createElement('div')this.modalBox.className='modal'this.modalBox.innerHTML=`<div class="modal"><div class="header">${title}<i>X</i> </div><div class="body">${message}</div><div class="footer"><button class="cancel">取消</button><button class="sure">确定</button></div></div>`// console.log(this.modalBox);}function closetwo(){document.querySelector('.alert').style.display='none'}// open方法Modal.prototype.open=function(){document.body.style.backgroundColor='#7f7f7f'document.body.append(this.modalBox)// 这里要使用箭头函数// document.querySelector('i').addEventListener('click',()=>{//   this.close()// })document.querySelector('.footer .cancel').addEventListener('click',()=>{this.close()})document.querySelector('.footer .sure').addEventListener('click',()=>{this.close()})document.querySelector('.modal i').addEventListener('click',()=>{document.querySelector('.alert').style.display='block'document.querySelector('.alert i').addEventListener('click',()=>{closetwo()})document.querySelector('.alert .cancel').addEventListener('click',()=>{closetwo()})document.querySelector('.alert .sure').addEventListener('click',()=>{this.close()closetwo()})})}// close方法Modal.prototype.close=function(){document.body.style.backgroundColor='#fff'this.modalBox.remove()}document.querySelector('.text').addEventListener('click',function(){const text = new Modal('提示','这是一段信息')text.open()})</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/55150.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于php的律所管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码 精品专栏&#xff1a;Java精选实战项目…

从0开始深度学习(6)——Pytorch动态图机制(前向传播、反向传播)

PyTorch 的动态计算图机制是其核心特性之一&#xff0c;它使得深度学习模型的开发更加灵活和高效。 0 计算图 计算图&#xff08;Computation Graph&#xff09;是一种用于表示数学表达式或程序流程的图形结构&#xff0c;可以将复杂的表达式分解成一系列简单的操作&#xff0…

详解代理模式-【静态代理与JDK动态代理】(非常的斯国一)

目录 静态代理 什么是静态代理: ​ 特点: 例子&#xff1a; JDK动态代理&#xff08;主要讲点&#xff09; 大纲&#xff1a; 1、与静态代码的联系 2、JDK动态代理的主流程 3、Proxy的源码 整体概述&#xff1a; 重要点的翻译 &#xff1a; newProxyInstance源码&am…

深信服2025届全球校招研发笔试-C卷(AK)

前面14个填空题 T1 已知 子数组 定义为原数组中的一个连续子序列。现给定一个正整数数组 arr&#xff0c;请计算该数组内所有可能的奇数长度子数组的数值之和。 输入描述 输入一个正整数数组arr 输出描述 所有可能的奇数长度子数组的和 示例 1 输入 1,4,2,5,3 输出 58 说明 …

使用 Light Chaser 进行大屏数据可视化

引言 在当今数据驱动的世界中&#xff0c;数据可视化变得越来越重要。Light Chaser 是一款基于 React 技术栈的大屏数据可视化设计工具&#xff0c;通过简单的拖拽操作&#xff0c;你可以快速生成漂亮、美观的数据可视化大屏和看板。本文将介绍如何使用 Light Chaser 进行数据…

828华为云征文|部署在线文档应用程序 CodeX Docs

828华为云征文&#xff5c;部署在线文档应用程序 CodeX Docs 一、Flexus云服务器X实例介绍二、Flexus云服务器X实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置2.4 Docker 环境搭建 三、Flexus云服务器X实例部署 CodeX Docs3.1 CodeX Docs 介绍3.2 CodeX Docs 部署3.3 CodeX…

RabbitMQ应用

RabbitMQ 共提供了7种⼯作模式, 进⾏消息传递 一、七种模式的概述 1、Simple(简单模式) P:生产者,就是发送消息的程序 C:消费者,就是接收消息的程序 Queue:消息队列,类似⼀个邮箱, 可以缓存消息; ⽣产者向其中投递消息, 消费者从其中取出消息 特点: ⼀个⽣产者P,⼀…

小米2025届软件开发工程师(C/C++/Java)(编程题AK)

选择题好像也是25来个 编程题 T1 题目描述 小明喜欢解决各种数学难题。一天&#xff0c;他遇到了一道有趣的题目:他需要帮助他的朋友们完成一个排序任务。小明得到两个长度为 n 的数组a[]和b[]。他可以在两个数组对应位置进行交换&#xff0c;即选定一个位置 i &#xff0c…

《pyqt+open3d》open3d可视化界面集成到qt中

《pyqtopen3d》open3d可视化界面集成到qt中 一、效果显示二、代码三、资源下载 一、效果显示 二、代码 参考链接 main.py import sys import open3d as o3d from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget from PyQt5.QtGui import QWindow from PyQt5.Qt…

App模拟下载场景的demo

摘要 目的&#xff1a;提供一个稳定的下载场景&#xff0c;可以手动触发和定时触发下载&#xff0c;每次下载相同大小文件&#xff0c;研究下载场景的功耗影响 原理&#xff1a;把电脑当做服务器&#xff0c;手机测试App固定下载电脑存放的某个XXXMB的大文件&#xff0c;基于…

C语言进阶版第14课—内存函数

文章目录 1. memcpy函数的使用和模拟实现1.1 memcpy函数的使用1.2 模拟实现memcpy函数 2. memmove函数的使用和模拟实现2.1 memmove函数的使用2.2 memmove函数的模拟实现 3. memset函数4. memcmp函数 1. memcpy函数的使用和模拟实现 1.1 memcpy函数的使用 memcpy函数的原形voi…

英语音标与重弱读

英语中&#xff0c;比较重要的是音标。但事实上&#xff0c;我们对音标的学习还是比较少的&#xff0c;对它的理解也是比较少的。 一、音标 2个半元音 [w][j] 5个长元音&#xff1a;[i:] [ə:] [ɔ:] [u:] [ɑ:] 7个短元音&#xff1a;[i] [ə] [ɔ] [u] [] [e] [ʌ] 8个双元音…

第100+26步 ChatGPT学习:概率校准 Bayesian Binning into Quantiles

基于Python 3.9版本演示 一、写在前面 最近看了一篇在Lancet子刊《eClinicalMedicine》上发表的机器学习分类的文章&#xff1a;《Development of a novel dementia risk prediction model in the general population: A large, longitudinal, population-based machine-learn…

【2】图像视频的加载和显示

文章目录 【2】图像视频的加载和显示一、代码在哪写二、创建和显示窗口&#xff08;一&#xff09;导入OpenCV的包cv2&#xff08;二&#xff09;创建窗口&#xff08;三&#xff09;更改窗口大小 & 显示窗口&#xff08;四&#xff09;等待用户输入补充&#xff1a;ord()函…

【Unity踩坑】Unity更新Google Play结算库

一、问题描述&#xff1a; 在Google Play上提交了app bundle后&#xff0c;提示如下错误。 我使用的是Unity 2022.01.20f1&#xff0c;看来用的Play结算库版本是4.0 查了一下文档&#xff0c;Google Play结算库的维护周期是两年。现在需要更新到至少6.0。 二、更新过程 1. 下…

【视频目标分割-2024CVPR】Putting the Object Back into Video Object Segmentation

Cutie 系列文章目录1 摘要2 引言2.1背景和难点2.2 解决方案2.3 成果 3 相关方法3.1 基于记忆的VOS3.2对象级推理3.3 自动视频分割 4 工作方法4.1 overview4.2 对象变换器4.2.1 overview4.2.2 Foreground-Background Masked Attention4.2.3 Positional Embeddings 4.3 Object Me…

cpp,git,unity学习

c#中的? 1. 空值类型&#xff08;Nullable Types&#xff09; ? 可以用于值类型&#xff08;例如 int、bool 等&#xff09;&#xff0c;使它们可以接受 null。通常&#xff0c;值类型不能为 null&#xff0c;但是通过 ? 可以表示它们是可空的。 int? number null; // …

使用 SSH 连接 Docker 服务器:IntelliJ IDEA 高效配置与操作指南

使用 SSH 连接 Docker 服务器&#xff1a;IntelliJ IDEA 高效配置与操作指南 本文详细介绍了如何在 2375 端口未开放的情况下&#xff0c;通过 SSH 连接 Docker 服务器并在 Idea 中进行开发。通过修改用户权限、生成密钥对以及配置 SSH 访问&#xff0c;用户可以安全地远程操作…

NASA数据集:ATLAS/ICESat-2 L3B 每日和每月网格化海冰自由面高度,第 4 版

目录 简介 摘要 代码 引用 网址推荐 0代码在线构建地图应用 机器学习 ATLAS/ICESat-2 L3B Daily and Monthly Gridded Sea Ice Freeboard, Version 4 简介 ATLAS/ICESat-2 L3B Daily and Monthly Gridded Sea Ice Freeboard, Version 4数据是由NASA的ATLAS&#xff08…

Ubuntu 系统崩了,如何把数据拷下来

问题描述&#xff1a; Linux系统中安装输入法后&#xff0c;重启后&#xff0c;导致系统无法进入&#xff0c;进入 recovery mode下的resume 也启动不了&#xff0c;所以决定将需要的东西复制到U盘 解决方案&#xff1a; 1.重启ubuntu&#xff0c;随即点按Esc进入grub菜单&am…