实现简易开屏弹窗

要实现一个简易的开屏弹窗,并展示一些文章内容,以下是一个简单的HTML和CSS实现。这个弹窗会在页面加载时显示,并包含一个标题和一些文章内容。用户可以点击按钮关闭弹窗,关闭后,弹窗的状态会保存在浏览器的 sessionStorage 中,这样在同一会话期间,页面刷新后不会再显示弹窗。
代码示例:

<!DOCTYPE html>
<html lang="zh">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>开屏弹窗示例</title><style>/* 设置全局样式 */* {margin: 0;padding: 0;box-sizing: border-box;}/* 弹窗外部遮罩层样式 */.overlay {position: fixed;top: 0;left: 0;width: 100vw;height: 100vh;background-color: rgba(0, 0, 0, 0.5); /* 半透明黑色背景 */display: none; /* 初始隐藏 */justify-content: center;align-items: center;}/* 弹窗框样式 */.popup {width: 80%;max-width: 600px;background-color: white;border-radius: 20px;padding: 20px;box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);}/* 标题样式 */.popup h1 {font-size: 24px;margin-bottom: 20px;}/* 文章内容样式 */.popup p {font-size: 16px;line-height: 1.6;margin-bottom: 20px;}/* 按钮样式 */.close-btn {display: inline-block;padding: 10px 20px;background-color: #4CAF50;color: white;font-size: 16px;border: none;border-radius: 5px;cursor: pointer;}.close-btn:hover {background-color: #45a049;}</style>
</head>
<body><!-- 遮罩层及弹窗 --><div class="overlay"><div class="popup"><h1>欢迎阅读我们的文章!</h1><p>亲爱的读者,感谢您的光临!我们将为您提供最新的文章内容和游戏资讯。在这篇文章中,我们将讨论关于游戏的一些策略以及如何提高游戏体验。</p><p>本次更新包括对游戏机制的优化和部分英雄的平衡调整,玩家们将能够体验到更加公平和刺激的对战体验。</p><button class="close-btn" onclick="closePopup()">关闭</button></div></div><script>// 获取弹窗和遮罩层元素const overlay = document.querySelector('.overlay');// 关闭弹窗的函数function closePopup() {sessionStorage.setItem('popupClosed', 'true');  // 标记弹窗已关闭overlay.style.display = 'none';  // 隐藏弹窗}// 判断弹窗是否已经关闭if (!sessionStorage.getItem('popupClosed')) {overlay.style.display = 'flex';  // 如果没有关闭,显示弹窗}</script></body>
</html>

代码说明:

  1. HTML 结构

    • overlay:外部遮罩层,覆盖整个页面,具有半透明的黑色背景,用来聚焦弹窗内容。
    • popup:弹窗框,包含标题、文章内容和关闭按钮。
    • 文章内容放在 <p> 标签中,你可以根据需要编辑文章内容。
  2. CSS 样式

    • overlay 设置为 display: none,初始时不显示弹窗。它通过 flex 布局居中弹窗。
    • 弹窗的样式设置了背景色、圆角、阴影和内边距,使其看起来更美观。
    • 按钮有简单的样式,点击时会改变背景颜色。
  3. JavaScript 功能

    • closePopup() 函数会在用户点击“关闭”按钮时触发,关闭弹窗并将弹窗状态(popupClosed)存储在 sessionStorage 中。sessionStorage 是浏览器提供的存储机制,它会在页面会话结束时清除数据。
    • 页面加载时,如果 sessionStorage 中没有 popupClosed,弹窗就会显示。否则,弹窗会被隐藏。

功能说明:

  • 首次加载:页面加载时弹窗会显示,展示文章内容。
  • 关闭弹窗:用户点击“关闭”按钮后,弹窗会消失,且 sessionStorage 中的 popupClosed 标记为 true。这样即使页面刷新,弹窗也不会再显示,直到会话结束或用户关闭浏览器窗口。

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

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

相关文章

WPF之iconfont(字体图标)使用

1&#xff0c;前文&#xff1a; WPF的Xaml是与前端的Html有着高度相似性的标记语言&#xff0c;所以Xaml也可同Html一般轻松使用阿里提供的海量字体图标&#xff0c;从而有效的减少开发工作度。 2&#xff0c;下载字体图标&#xff1a; 登录阿里图标库网iconfont-阿里巴巴矢量…

图神经网络(GNN)入门笔记(2)——从谱域理解图卷积,ChebNet和GCN实现

一、谱域图卷积&#xff08;Spectral Domain Graph Convolution&#xff09; 与谱域图卷积&#xff08;Spectral Domain Graph Convolution&#xff09;对应的是空间域&#xff08;Spatial Domain&#xff09;图卷积。本节学习的谱域图卷积指的是通过频率来理解卷积的方法。 …

leetcode92:反转链表||

给你单链表的头指针 head 和两个整数 left 和 right &#xff0c;其中 left < right 。请你反转从位置 left 到位置 right 的链表节点&#xff0c;返回 反转后的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], left 2, right 4 输出&#xff1a;[1,4,3,2…

知识图谱是如何通过数据集构建的,比如通过在MSCOCO和Flickr30k数据集和Visual Genome数据集

系列博客目录 文章目录 系列博客目录1. 数据准备与实体识别2. 关系抽取3. 图结构构建4. 图嵌入学习5. 知识图谱存储与查询示例&#xff1a;通过 Visual Genome 构建一个简单的知识图谱 构建知识图谱通常涉及从数据集中提取实体和关系&#xff0c;并将其结构化为图的形式。在 MS…

Python-安装与PyCharm的安装配置(1)

目录 安装 打开运行 PyCharm的安装 新建项目 安装 找到官网下载对应的电脑对应的版本 Welcome to Python.org -- 官网 下载稳定版的 安装记得勾选配置环境&#xff0c;这样自己就不需要再配置环境了 安装成功 至此python的运行环境就安装好了 打开运行 在开始菜单中可以…

XGBoost算法Python代码实现(单棵树类)

### XGBoost单棵树类 class XGBoost_Single_Tree(BinaryDecisionTree):# 结点分裂方法def node_split(self, y):# 中间特征所在列feature int(np.shape(y)[1]/2)# 左子树为真实值&#xff0c;右子树为预测值y_true, y_pred y[:, :feature], y[:, feature:]return y_true, y_p…

python的编程基础分支,循环与函数的应用知识

编程基础是学习任何编程语言的必备知识之一。在Python中&#xff0c;分支、循环和函数是常用的编程概念&#xff0c;它们可以让我们编写出更复杂、更灵活的程序。 分支 分支是根据条件来决定程序执行的不同路径。在Python中&#xff0c;我们使用if语句来实现分支。 if 条件:# …

营业执照OCR识别API接口如何用C#调用

服务器和计算设备的性能不断提升&#xff0c;为 OCR 识别提供了更强大的计算能力支持。更快的 CPU、GPU 以及分布式计算技术的应用&#xff0c;使得营业执照图片的处理速度大幅加快&#xff0c;能够在更短的时间内完成大量营业执照的识别工作。 研发人员不断对 OCR 识别算法进…

qt QLocale详解

1、概述 QLocale是Qt框架中的一个类&#xff0c;用于处理与本地化相关的操作。它能够方便地实现日期、时间、数字和货币的格式化和解析&#xff0c;支持不同的语言、区域设置和字符集。QLocale提供了一种跨平台的方式来获取当前系统的语言设置&#xff0c;并返回该语言的本地化…

微服务架构面试内容整理-Eureka

Spring Cloud Netflix 是一个为构建基于 Spring Cloud 的微服务应用提供的解决方案,利用 Netflix 的开源组件来实现常见的分布式系统功能。以下是 Spring Cloud Netflix 的一些主要组件和特点: 服务注册与发现:Eureka 是一个 RESTful 服务,用于注册和发现微服务。服务实例在…

缓存、注解、分页

一.缓存 作用&#xff1a;应用查询上&#xff0c;内存中的块区域。 缓存查询结果&#xff0c;减少与数据库的交互&#xff0c;从而提高运行效率。 1.SqlSession 缓存 1. 又称为一级缓存&#xff0c;mybatis自动开启。 2. 作用范围&#xff1a;同一…

uniapp vue3 使用echarts-gl 绘画3d图表

我自己翻遍了网上&#xff0c;以及插件市场&#xff0c;其实并没有uniapp 上使用echarts-gl的样例&#xff0c;大多数都是使用插件市场的echarts的插件 开始自己尝试直接用echartsgl 没有成功&#xff0c;后来尝试使用threejs 但是也遇到一些问题&#xff0c;最后我看官网的时…

【言语理解】片段阅读整体概述

1.1 题型分类 片段阅读一般有以下六种&#xff1a; 中心理解题 “这段文字意在说明&#xff1a;” “这段文字意在强调&#xff1a;” “这段文字主要介绍了&#xff1a;” “下列对文意概括最恰当的是&#xff1a;”标题拟定题 “最适合做这段文字标题的是&#xff1a;”下文…

linux搭建大数据环境

前期准备工作 友情提醒提前安装好vmware软件,准备好连接虚拟机的客户端 一. 基础环境 1.配置ip地址 修改ip配置文件 [rootnode1 /]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE"Ethernet" PROXY_METHOD"none" BROWSER_ONLY"no" # …

什么是 OpenTelemetry?

OpenTelemetry 定义 OpenTelemetry (OTel) 是一个开源可观测性框架&#xff0c;允许开发团队以单一、统一的格式生成、处理和传输遥测数据&#xff08;telemetry data&#xff09;。它由云原生计算基金会 (CNCF) 开发&#xff0c;旨在提供标准化协议和工具&#xff0c;用于收集…

ESP32 gptimer通用定时器初始化报错:assert failed: timer_ll_set_clock_prescale

背景&#xff1a;IDF版本V5.1.2 &#xff0c;配置ESP32 通用定时器&#xff0c;实现100HZ&#xff0c;占空比50% 的PWM波形。 根据乐鑫官方的IDF指导文档设置内部计数器的分辨率&#xff0c;计数器每滴答一次相当于 1 / resolution_hz 秒。 &#xff08;ESP-IDF编程指导文档&a…

AIGC在游戏设计中的应用及影响

文章目录 一、AIGC的基本概念与背景AIGC的主要应用领域AIGC技术背景 二、AIGC在游戏设计中的应用1. 自动化游戏地图与关卡设计示例&#xff1a;自动生成2D平台游戏关卡 2. 角色与物品生成示例&#xff1a;使用GAN生成虚拟角色 3. 游戏剧情与任务文本生成示例&#xff1a;基于GP…

【NOIP普及组】统计单词数

【NOIP普及组】统计单词数 &#x1f490;The Begin&#x1f490;点点关注&#xff0c;收藏不迷路&#x1f490; 一般的文本编辑器都有查找单词的功能&#xff0c;该功能可以快速定位特定单词在文章中的位置&#xff0c;有的还能统计出特定单词在文章中出现的次数。 现在&#x…

Spring Security(5.x, 6.x ) RBAC访问控制

在 Spring Security 中&#xff0c;基于不同版本实现 RBAC&#xff08;基于角色的访问控制&#xff09;功能有一些不同的方式。RBAC 的基本原理是&#xff1a;定义用户、角色和权限的关系&#xff0c;并控制不同用户对资源的访问。 Spring Security 不同版本的实现主要在配置方…

Unity 如何优雅的限定文本长度, 包含对特殊字符,汉字,数字的处理。实际的案例包括 用户昵称

常规限定文本长度 ( 通过 UntiyEngine.UI.Inputfiled 附带的长度限定 ) 痛点1 无法对中文&#xff0c;数字&#xff0c;英文进行识别&#xff0c;同样数量的汉字和同样数量的英文像素长度是不一样的&#xff0c;当我们限定固定长度后&#xff0c;在界面上的排版不够美观 痛点2…