当前位置: 首页 > news >正文

html+css+js实现Notification 通知

实现效果:

代码实现:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Notification 通知</title><style>*{padding: 0;margin: 0;box-sizing: border-box;}.source{display: flex;margin-top: 50px;margin-left: 50px;width: 870px;height: 80px;padding: 24px;border: 1px solid #ecf5ff;}button{width: 110px;height:40px;margin-right: 20px;color: #606266;border: 1px solid #c0c4cc;background-color: #fff;border-radius: 3px;}button:hover{border: 1px solid #409eff;color:#409eff ;}button.active{border: 1px solid #409eff;color:#409eff ;}.modal-container {position: fixed;top: 20px;right: 20px;width: 330px;}.modal{width: 330px;border: 1px solid #c0c4cc;padding: 14px 24px 14px 18px;border-radius: 5px;margin-bottom: 14px;transform: translateX(350px);transition: transform 0.3s ease-in-out;}.open{transform: translateX(0);}.modal .header{display: flex;justify-content: space-between;font-weight: 700;font-size: 16px;color: #303133;padding-bottom: 5px;}i{cursor: pointer;font-style: normal;font-weight: 300;color: #606266;}.modal .footer{color: #606266;font-size: 14px;}</style>
</head>
<body><div class="source"><button class="close">可自动关闭</button><button class="unclose">不会自动关闭</button></div><div class="modal-container"><!-- 模态框将被动态添加到这个容器中 --><!-- <div class="modal"><div class="header">标题名称<i>X</i></div><div class="footer">这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案</div></div> --></div><script>// 1.Modal构造函数封装模态框function Modal(title='',message=''){// console.log(title,message);// 创建modal模态框盒子// 1.1创建div标签this.modalBox=document.createElement('div')// 1.2给div标签添加modal类this.modalBox.className='modal'// 1.3给modal盒子内部填充两个div标签this.modalBox.innerHTML=`<div class="header">${title} <i>X</i></div><div class="footer">${message} </div>`// console.log(this.modalBox);}new Modal('提示','这是一条不会自动关闭的消息')// 2.给构造函数原型对象身上挂载open方法Modal.prototype.open=function(){document.querySelector('.modal-container').append(this.modalBox);setTimeout(() => {this.modalBox.classList.add('open');}, 300);// 点击关闭this.closeBtn=this.modalBox.querySelector('.close-btn');this.modalBox.querySelector('i').addEventListener('click', () => {this.close();});}// close方法Modal.prototype.close=function(){this.modalBox.classList.remove('open');setTimeout(() => {this.modalBox.remove();}, 300); // 等待动画完成后移除元素}// 绑定点击事件document.querySelector('.close').addEventListener('click', function() {const modal = new Modal('标题名称','这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案');modal.open();// 设置模态框在3秒后自动关闭setTimeout(() => {modal.close();}, 3000);});document.querySelector('.unclose').addEventListener('click',function(){const unclose=new Modal('提示','这是一条不会自动关闭的消息')unclose.open()})</script>
</body>
</html>

 

相关文章:

html+css+js实现Notification 通知

实现效果&#xff1a; 代码实现&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Notif…...

【Linux】拆分详解 - 常见指令和权限理解

文章目录 前言一、常用指令1. 基本查看与路径跳转1.1文件与目录1.2 ls 指令&#xff08;显示文件&#xff09;1.3 pwd &#xff08;查看当前目录&#xff09;1.4 clear &#xff08;清屏&#xff09;1.5 whoami &#xff08;查看用户名&#xff09;1.6 cd&#xff08;跳转路径&…...

UniHttp 框架,请求http接口

项目案例下载地址: https://download.csdn.net/download/jinhuding/89902024 1.快速开始 2.1引入依赖 <dependency><groupId>io.github.burukeyou</groupId><artifactId>uniapi-http...

C++20中头文件ranges的使用

<ranges>是C20中新增加的头文件&#xff0c;提供了一组与范围(ranges)相关的功能&#xff0c;此头文件是ranges库的一部分。包括&#xff1a; 1.concepts: (1).std::ranges::range:指定类型为range&#xff0c;即它提供开始迭代器和结束标记(it provides a begin iterato…...

设计一个html+css+js的注册页,对于注册信息进行合法性检测

综合使用HTML、JavaScript和CSS进行注册页面设计&#xff0c;实现以下若干功能&#xff1a; 注意整个页面的色调和美观使用FramesetTable布局&#xff08;div也可&#xff09;对用户ID和用户名、口令不符合条件及时判断对口令不一致进行及时判断&#xff08;34的及时判断&#…...

语音识别——使用Vosk进行语音识别

文章目录 前言一、Vosk模型1.准备好所需要的语音包2.下载使用 二、使用示例1.文件读取示例2.结合麦克风演示 总结 前言 如何编译Vosk请参照之前的文章&#xff0c;ubuntu编译kaldi和vosk Vosk是语音识别开源框架&#xff0c;支持二十种语言 - 中文&#xff0c;英语&#xff0…...

element ui中el-image组件查看图片的坑

比如说上传组件使用el-image-viewer组件去看,如果用错了,你会发现,你每次只能看一张图片 <template><div><el-upload action="#" list-type="picture-card" :auto-upload="false" :file-list="fileList"@change=&qu…...

LabVIEW水质监测系统

在面对全球性的海洋污染问题时&#xff0c;利用先进技术进行水质监测成为了保护海洋环境的关键手段之一。开发了一种基于LabVIEW的海洋浮标水质监测系统&#xff0c;该系统能够实时监测并评估近海水域的水质状况&#xff0c;旨在为海洋保护和污染防治提供科技支持。 项目背景 …...

SpringMVC之 文件上传和下载

1. 文件上传 1.1 前端注意事项 文件上传操作&#xff0c;前端的表单项需要如下三项设置&#xff1a; &#xff08;1&#xff09;input标签的type属性应设置为file&#xff0c;并且注意不要在input标签中设置value属性&#xff0c;因为这可能导致文件上传不成功&#xff1b; …...

LeetCode Hot 100:二分查找

LeetCode Hot 100&#xff1a;二分查找 35. 搜索插入位置 思路 1&#xff1a;lower_bound class Solution { public:int searchInsert(vector<int>& nums, int target) {return lower_bound(nums.begin(), nums.end(), target) - nums.begin();} };思路 2&#xf…...

打包方式-jar和war的区别

1、jar包 JAR包是类的归档文件&#xff0c;与平台无关的文件格式&#xff0c;其实jar包就是java的类进行编译生成的class文件进行打包的压缩包。 JAR以ZIP文件格式为基础&#xff0c;与ZIP不同的是&#xff0c;JAR不仅用于压缩和发布&#xff0c;还用于部署和封装库、组件和插…...

【论文+源码】基于spring boot的垃圾分类网站

创建一个基于Spring Boot的垃圾分类网站涉及多个步骤&#xff0c;包括环境搭建、项目创建、数据库设计、后端服务开发、前端页面设计等。下面我将引导您完成这个过程。 第一步&#xff1a;准备环境 确保您的开发环境中安装了以下工具&#xff1a; Java JDK 8 或更高版本Mav…...

【C++ STL 模板类】pair 键值对

文章目录 【 1. pair 对象的创建 】【 2. pair 对象的赋值 】【 3. pair 对象的比较 】【 4. pair对象成员的互换】 C STL 标准库提供了 pair 类模板&#xff0c;专门用来将 2 个普通元素 first 和 second&#xff08;可以是 C 基本数据类型、结构体、类自定的类型&#xff09;…...

paddleocr使用FastDeploy 部署工具部署 rknn 模型

在 PC 端转换 pdmodel 模型为 rknn 模型和在板端使用百度飞浆开发的 FastDeploy 部署工具部署 rknn 模型 以下内容是在 PC 端系统为 Ubuntu20.04&#xff0c;板端系统为ubuntu20.04 的环境下实现的 描述&#xff1a; 官网地址 rknn_zoo RKNPU2_SDK …...

Apple Vision Pro市场表现分析:IDC最新数据揭示的真相

随着AR/VR技术逐渐成熟并被更多消费者接受,2024年第二季度(Q2)成为这一领域的一个重要转折点。根据国际数据公司(IDC)发布的最新报告,整个AR/VR市场在本季度经历了显著的增长。接下来,我们将深入探讨Apple Vision Pro在这股增长浪潮中的具体表现。 市场背景 2024年Q2,…...

Mybatis-04.入门-JDBC

一.JDBC 二.原始的JDBC程序代码 &#xff08;不做要求&#xff09; Test public void testJdbc() throws Exception {//1. 注册驱动Class.forName("com.mysql.cj.jdbc.Driver");//2. 获取连接对象String url "jdbc:mysql://localhost:3306/mybatis";Str…...

拥抱云开发的未来:腾讯云数据库、云模板与AI智能化的应用场景探索

本文目录&#xff1a; &#x1f4a1;前言&#xff1a;技术的边界在不断延展&#x1f31f;目录&#x1f308;什么是腾讯云云开发&#xff1f;&#x1f4be;云数据库&#xff1a;让数据成为开发的稳固基石&#x1f951;数据&#xff0c;不再只是数据 &#x1f6e0;云模板&#xf…...

新手铲屎官求推荐,噪音低的宠物空气净化器应该用哪款

当初选择养橘猫就是因为我听到有人说橘猫不容易掉毛才养的&#xff0c;谁知道养了之后和传闻中的不一样&#xff0c;真正的让我明白了什么叫“眼见为实”。 主要是猫掉毛就掉毛&#xff0c;只要我能清理的我都会清理&#xff0c;只要能保证养猫的同时还能保持家里卫生干净就行…...

玄机平台-应急响应-webshell查杀

首先xshell连接 然后进入/var/www/html目录中&#xff0c;将文件变成压缩包 cd /var/www/html tar -czvf web.tar.gz ./* 开启一个http.server服务&#xff0c;将文件下载到本地 python3 -m http.server 放在D盾中检测 基本可以确认木马文件就是这四个 /var/www/html/shell.p…...

LeetCode Hot 100:图论

LeetCode Hot 100&#xff1a;图论 200. 岛屿数量 思路 1&#xff1a;深度优先搜索 class Solution { private:const int dx[4] {-1, 0, 1, 0};const int dy[4] {0, 1, 0, -1};public:int numIslands(vector<vector<char>>& grid) {if (grid.empty())retu…...

智慧医疗泡罩药板药片缺失缺陷检测数据集VOC+YOLO格式1300张3类别

注意数据集中图片大约500张是原图剩余为增强图片数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件)图片数量(jpg文件个数)&#xff1a;1300标注数量(xml文件个数)&#xff1a;1300…...

颠覆式窗口置顶:Topit重新定义Mac多任务处理体验

颠覆式窗口置顶&#xff1a;Topit重新定义Mac多任务处理体验 【免费下载链接】Topit Pin any window to the top of your screen / 在Mac上将你的任何窗口强制置顶 项目地址: https://gitcode.com/gh_mirrors/to/Topit 在数字工作空间爆炸式增长的今天&#xff0c;Mac用…...

CentOS7快速部署Golang 1.22.2开发环境全攻略

1. 为什么选择CentOS7部署Golang 1.22.2 最近在帮团队搭建新的开发环境时&#xff0c;我发现很多同事还在用老旧的Golang版本。作为目前最稳定的Linux发行版之一&#xff0c;CentOS7依然是企业级开发环境的首选。而Golang 1.22.2作为2024年发布的最新稳定版&#xff0c;带来了不…...

JPEXS Free Flash Decompiler社区大使选拔流程:申请与评审完全指南

JPEXS Free Flash Decompiler社区大使选拔流程&#xff1a;申请与评审完全指南 【免费下载链接】jpexs-decompiler JPEXS Free Flash Decompiler 项目地址: https://gitcode.com/gh_mirrors/jp/jpexs-decompiler JPEXS Free Flash Decompiler是一款功能强大的Flash反编译…...

FlatBuffers游戏开发终极指南:如何实现零解析实时数据传输

FlatBuffers游戏开发终极指南&#xff1a;如何实现零解析实时数据传输 【免费下载链接】flatbuffers FlatBuffers: Memory Efficient Serialization Library 项目地址: https://gitcode.com/gh_mirrors/flat/flatbuffers 在游戏开发中&#xff0c;数据传输的效率直接影响…...

Phi-4-Reasoning-Vision智能助手:医疗影像图文问答系统构建实践

Phi-4-Reasoning-Vision智能助手&#xff1a;医疗影像图文问答系统构建实践 1. 项目概述 Phi-4-Reasoning-Vision是一款基于微软Phi-4-reasoning-vision-15B多模态大模型开发的高性能推理工具&#xff0c;专为医疗影像分析场景优化。该系统能够理解医学影像内容并回答专业问题…...

Sqoop性能调优之 --fetch-size:小参数,大作用

Sqoop性能调优之 --fetch-size&#xff1a;小参数&#xff0c;大作用1. 引言&#xff1a;被忽视的"隐形冠军"2. 什么是 --fetch-size&#xff1f;2.1 基本定义2.2 核心作用3. 底层原理&#xff1a;从逐行到批量3.1 没有 --fetch-size 的情况&#xff08;逐行读取&…...

什么时候会触发FullGC

面试 1、老年代空间不足。应该让对象在年轻代多存活一段时间&#xff0c;不要创建过大的对象及数组。 2、元空间满了。说明此时&#xff0c;系统中要加载的类、反射的类和调用的方法较多。 3、MinorGC执行后晋升到老年代的平均大小大于老年代的剩余空间。...

OpenClaw自动化周报:Qwen3-32B镜像整合多平台数据

OpenClaw自动化周报&#xff1a;Qwen3-32B镜像整合多平台数据 1. 为什么需要自动化周报 每周五下午&#xff0c;我的日历总会准时弹出提醒&#xff1a;"撰写本周工作总结"。这个看似简单的任务&#xff0c;实际操作起来却异常繁琐&#xff1a;需要登录JIRA查看任务…...

LSTM电池SOC估计最基本方法及全包代码:包含两个数据集、预处理代码、模型代码与估计结果

LSTM做电池SOC估计&#xff0c;最基本的方法&#xff0c;入门必学&#xff0c;包括两个数据集&#xff0c;及其介绍、预处理代码、模型代码、估计结果等&#xff0c;这是我见过最全的一个SOC估计代码包&#xff0c;总共文件大概有70个左右最近在折腾电池SOC估计&#xff0c;发现…...