红包雨html

1、分享一个红包雨html代码。

<!DOCTYPE html>
<html lang="zh">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>红包雨小游戏</title><style>body {margin: 0;overflow: hidden;background-color: #dff9fb; /* 设置背景颜色 */font-family: Arial, sans-serif;}#container {position: relative;width: 80vw; /* 将宽度设置为80% */height: 80vh; /* 将高度设置为80% */overflow: hidden;margin: 10vh auto; /* 垂直居中 */}#score {position: fixed;top: 20px;left: 20px;font-size: 24px;color: #333;background-color: rgba(255, 255, 255, 0.8); /* 半透明白色背景 */padding: 10px 15px;border-radius: 5px;box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);}.red-envelope {position: absolute;width: 50px;height: 70px;color: white;font-size: 20px;text-align: center;line-height: 70px;border-radius: 5px;cursor: pointer;user-select: none;font-family: "Microsoft YaHei", Arial, sans-serif;}.red {background-color: #ff4d4f; /* 红色 */}.gold {background-color: #ffcc00; /* 金色 */}.blue {background-color: #007bff; /* 蓝色 */}.green {background-color: #28a745; /* 绿色 */}@keyframes fall {0% {transform: translateY(0);}100% {transform: translateY(100vh);}}.fall {animation: fall linear forwards;}#reward {position: fixed;top: 100px;left: 50%;transform: translateX(-50%);font-size: 30px;font-weight: bold;color: #fff;background: linear-gradient(135deg, #ff7e5f, #feb47b); /* 渐变色 */padding: 20px 40px;border-radius: 10px;box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);display: none; /* 初始隐藏 */z-index: 10; /* 确保在最上层 */animation: bounce 1s ease-out infinite; /* 添加弹跳动画 */}@keyframes bounce {0%, 20%, 50%, 80%, 100% {transform: translateY(0);}40% {transform: translateY(-10px);}60% {transform: translateY(-5px);}}.reward-text {font-size: 36px;font-weight: bold;color: #fff;}</style>
</head>
<body><div id="score">获得红包数量: <span id="count">0</span></div><div id="reward"><span class="reward-text">恭喜你!获得额外奖励!</span></div><div id="container"></div><script>const container = document.getElementById('container');const countDisplay = document.getElementById('count'); // 用于显示红包数量const rewardDisplay = document.getElementById('reward'); // 用于显示奖励消息const colors = ['red', 'gold', 'blue', 'green']; // 红包颜色数组let score = 0; // 记录获得的红包数量function createRedEnvelope() {const envelope = document.createElement('div');envelope.className = 'red-envelope ' + colors[Math.floor(Math.random() * colors.length)]; // 随机选择颜色envelope.textContent = '红包';envelope.style.left = Math.random() * (container.clientWidth - 50) + 'px'; // 随机位置,确保在画布范围内envelope.style.top = '-70px'; // 初始位置在屏幕上方// 添加动画类envelope.classList.add('fall');// 点击事件envelope.addEventListener('click', () => {score++; // 增加红包数量countDisplay.textContent = score; // 更新显示数量// 每获得 5 个红包,显示奖励if (score % 5 === 0) {showReward();}container.removeChild(envelope); // 移除红包});// 设置动画持续时间envelope.style.animationDuration = Math.random() * 2 + 3 + 's'; // 随机时长// 添加到容器container.appendChild(envelope);// 动画结束后移除红包envelope.addEventListener('animationend', () => {container.removeChild(envelope);});}function showReward() {rewardDisplay.style.display = 'block'; // 显示奖励消息setTimeout(() => {rewardDisplay.style.display = 'none'; // 3秒后隐藏奖励消息}, 3000);}// 每500毫秒生成一个红包(增加红包数量)setInterval(createRedEnvelope, 500);</script>
</body>
</html>

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

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

相关文章

Linux:进程优先级 进程调度切换 调度算法

#1024程序员节&#xff5c;征文# 目录 1.进程优先级 1.1 概念 1.2 为什么有优先级 1.3 Linux进程优先级 2. 概念预备 2.1 并发 2.2 寄存器 主要类型&#xff1a; 2. 进程的调度与切换 3.1 进程调度 3.2 进程切换 4. 调度算法 4.1 runqueue内部结构 4.2 如何调度…

Git使用GUI界面实现任意历史版本对比

首先进入版本历史查看界面 标记某次提交 选择某次提交并和标记的提交对比 可以查看比较结果了&#xff0c;具体到每一个文件每一行代码

一篇文章快速认识 YOLO11 | 目标检测 | 模型训练 | 自定义数据集

本文分享YOLO11的目标检测&#xff0c;主要内容是自定义数据集、数据标注、标签格式转换、模型训练、模型推理等。 目录 1、数据标注 2、Labelme的json转为YOLO的txt 3、配置YOLO11代码工程 4、数据集yaml配置文件 5、YOLO11模型结构配置文件 6、编写训练代码 7、开始训…

Unity 开发学习笔记(0):

文章目录 前言为什么要去学Unity安装国际版Unity总结 前言 我最近打算学习一下Unity。所以打算从零开始做一下相关的学习笔记。 为什么要去学Unity 上位机的上限就这样&#xff0c;没有运动控制和机器视觉&#xff0c;薪资上不去C# 我非常熟练&#xff0c;所以学习Unity成本…

excel判断某一列(A列)中的数据是否在另一列(B列)中

如B列如果有7个元素&#xff0c;在A列右边的空白列中&#xff0c;输入如下公式&#xff1a; COUNTIF($B$1:$B$7,A1), 其中&#xff0c;$B$1:$B$7代表A列中的所有数据即绝对范围&#xff0c;A1代表B列中的一个单元格.

JVM 加载 class 文件的原理机制

JVM 加载 class 文件的原理机制 JVM&#xff08;Java虚拟机&#xff09;是一个可以执行Java字节码的虚拟机。它负责执行Java应用程序和应用程序的扩展&#xff0c;如Java库和框架。 文章目录 JVM 加载 class 文件的原理机制1. JVM1.1 类加载器1.2 魔数1.3 元空间 2. 类加载2.1 …

openpnp - 底部相机视觉识别CvPipeLine的参数bug修正

文章目录 openpnp - 底部相机视觉识别的CvPipeLine的参数bug概述笔记openpnp的视觉识别参数的错误原因备注补充 - 如果要直接改默认的底部视觉要注意END openpnp - 底部相机视觉识别的CvPipeLine的参数bug 概述 底部相机抓起一个SOD323的元件&#xff0c;进行视觉识别。 识别…

点餐系统需求分析说明书(软件工程分析报告JAVA)

目录 1 引言 4 1.1 编写目的 4 1.2 项目背景 4 1.3 定义 4 1.4 预期的读者 5 1.5 参考资料 5 2 任务概述 5 2.1 目标 5 2.2 运行环境 5 2.3 条件与限制 6 3 数据描述 6 3.1 静态数据 6 3.2 动态数据 6 3.3 数据库介绍 6 3.4 对象模型 6 3.5 数据采集 7 4 动态模型 7 4.1 脚本 …

《深度学习》 了解YOLO基本知识

目录 一、关于YOLO 1、什么是YOLO 2、经典的检测方法 1&#xff09;one-stage单阶段检测 模型指标介绍&#xff1a; 2&#xff09;two-stage多阶段检测 二、关于mAP指标 1、概念 2、IOU 3、关于召回率和准确率 4、示例 5、计算mAP 一、关于YOLO 1、什么是YOLO YOL…

基于泊松洞过程建模的异构蜂窝网络信干比增益与近似覆盖率分析

大家好&#xff0c;我是带我去滑雪&#xff01; 移动通信业务的高速增长使得传统同构蜂窝网络结构不能满足用户对通信质量的要求&#xff0c;而异 构网络架构可以有效解决这种问题。文中对泊松洞过程下异构蜂窝网络的覆盖率进行研究。首 先&#xff0c;利用泊松洞过程( Poisson…

求助帖:ubuntu22.10 auto install user-data配置了为何还需要选择语言键盘(如何全自动)

0-现象&#xff1a;配置好autoinstll的PXE与user-data文件安装过程仍然要人工选语言、键盘等&#xff0c;非全自动&#xff1b;—— 1.硬件环境&#xff1a;x86_64机器 U盘&#xff08;/dev/sda&#xff09;&#xff1b; 2.软件环境&#xff1a;DHCPPXE启动做好grub与pxe的aut…

【AI绘画】Midjourney进阶:留白构图详解

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AI绘画 | Midjourney 文章目录 &#x1f4af;前言&#x1f4af;什么是构图为什么Midjourney要使用构图 &#x1f4af;留白构图特点使用场景提示词书写技巧测试 &#x1f4af;小结 &#x1f4af;前言 【AI绘画】Midjourney进阶&…

Springboot 的手动配置操作讲解

1.创建新项目: 手动创建使用maven 项目 并选择骨架: quickstart 骨架用来搭建spingboot 2.手动输入pom.xml依赖: 要想创建springboot 首先继承springboot 的父类 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-bo…

算法的学习笔记—两个链表的第一个公共结点(牛客JZ52)

&#x1f600;前言 在链表问题中&#xff0c;寻找两个链表的第一个公共结点是一个经典问题。这个问题的本质是在两个单链表中找到它们的相交点&#xff0c;或者说它们开始共享相同节点的地方。本文将详细讲解这个问题的解题思路&#xff0c;并提供一种高效的解决方法。 &#x…

python 爬虫抓取百度热搜

实现思路&#xff1a; 第1步、在百度热搜页获取热搜元素 元素类名为category-wrap_iQLoo 即我们只需要获取类名category-wrap_为前缀的元素 第2步、编写python脚本实现爬虫 import requests from bs4 import BeautifulSoupurl https://top.baidu.com/board?tabrealtime he…

[手机Linux PostmarketOS]七, Linux使用selenium爬虫

一&#xff0c;selenium安装 # 用pip 安装 selenium pip3 install selenium --break-system-packages 二&#xff0c;安装浏览器Chrome Alpine Linux 环境中没有google Chrome&#xff0c; 使用 Chromium 浏览器作为 Chrome 的替代品&#xff0c;Chromium 是 Chrome 的开源版本…

定时任务使用kafka

定时任务使用kafka 在上述业务场景中使用 Kafka 而不是直接定时执行任务有以下几个重要原因&#xff1a; 一、解耦 任务触发与执行分离&#xff1a; 使用 XXL-JOB 定时触发任务并将任务消息发送到 Kafka&#xff0c;实现了任务触发端&#xff08;通常是调度系统&#xff09;和…

数字后端零基础入门系列 | Innovus零基础LAB学习Day5

###Module 12 RC参数提取和时序分析 数字后端零基础入门系列 | Innovus零基础LAB学习Day4 数字后端零基础入门系列 | Innovus零基础LAB学习Day3 数字后端零基础入门系列 | Innovus零基础LAB学习Day2 数字后端零基础入门系列 | Innovus零基础LAB学习Day1 ###LAB12-1 这个章节…

机器学习与神经网络:科技的星辰大海

前提 近日&#xff0c;2024年诺贝尔物理学奖颁发给了机器学习与神经网络领域的研究者&#xff0c;这是历史上首次出现这样的情况。这项奖项原本只授予对自然现象和物质的物理学研究作出重大贡献的科学家&#xff0c;如今却将全球范围内对机器学习和神经网络的研究和开发作为了一…

kotlin 入门总结

目录 1、构造函数 2、数据类 data class&#xff0c; 3、object 单例类&#xff0c;相当于java线程安全的懒加载 4、companion object 伴生对象&#xff0c;类似于包装静态值的一个区域块 5、解构 6、空安全 7、条件语句 8、集合 9 属性和支持属性 属性 支持属性 10 …