html掉落本地图片效果

实现一个加载本地图片并掉落的html页面。


说明

DuanWu.htmlzongzi_1.png, zongzi_2.png, zongzi_3.png, yadan.png4张图片放在同一个目录下,然后双击打开DuanWu.html即可。

  • 使用ChromeMicrosoft Edge浏览器打开

  • 若使用IE浏览器打开,下方会出现Internet Explorer已限制此网页运行脚本或ActiveX控件。,请点击右边允许阻止的内容(A)


代码

DuanWu.html

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>本地图片飘落效果</title><style>body {background-color: #1a6840;overflow: hidden;}canvas {display: block;position: absolute;top: 0;left: 0;}</style>
</head><body><canvas id="canvas"></canvas><script>var canvas = document.getElementById('canvas');canvas.width = window.innerWidth;canvas.height = window.innerHeight;var ctx = canvas.getContext('2d');var leaves = [];var numLeaves = 28;images = loadImages()function loadImages() {images = []images[0] = new Image()images[0].src = "zongzi_1.png"images[1] = new Image()images[1].src = "zongzi_2.png"images[2] = new Image()images[2].src = "zongzi_3.png"images[3] = new Image()images[3].src = "yadan.png"return images}function createLeaf(image) {this.x = Math.random() * canvas.width;this.y = -100;this.vx = Math.random() * 2 - 1;this.vy = Math.random() * 3 + 1;this.draw = function () {ctx.drawImage(image, this.x, this.y, image.width, image.height);}this.update = function () {this.x += this.vx;this.y += this.vy;if (this.y > canvas.height + 10) {this.y = -10;this.x = Math.random() * canvas.width;}}}function init() {for (var i = 0; i < numLeaves; i++) {leaves.push(new createLeaf(images[i % images.length]));}}function loop() {requestAnimationFrame(loop);ctx.clearRect(0, 0, canvas.width, canvas.height);for (var i = 0; i < numLeaves; i++) {leaves[i].draw();leaves[i].update();}}init();loop();</script>
</body></html>

参考

HTML5实现的树叶飘落动画特效

HTML5 Canvas显示本地图片实例1、Canvas预览图片实例1

中国色


图片

zongzi_1.png
zongzi_2.png
zongzi_3.png
yadan.png

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

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

相关文章

什么是敏捷测试?

目录 前言&#xff1a; 敏捷测试的定义 敏捷测试的特点 为什么要敏捷测试 缩短价值交付周期 强调质量属于大家 化繁为简节省成本 敏捷测试VS. 传统测试 传统测试如何迁移到敏捷测试 1. 组织文化的转变 2. 组织架构的调整 3. 人员培训与指导 4. 轻流程 敏捷测试成…

一文了解潜力黑马Infiblue:借力Web3,释放元宇宙价值

2013 年&#xff0c;JDN Dionisio 曾发表了一篇名为《3D Virtual Worlds and the Metaverse: Current Status and Future Possibilities》的论文&#xff0c;深入探讨与归纳了虚拟世界的几个发展阶段&#xff0c;可以简单的归纳为&#xff1a; 第一阶段&#xff1a;基于计算机…

Blender基础入门(2):Blender简单渲染

文章目录 我个人的Blender专栏前言渲染基本常识科普Blender渲染设置Blender窗口分栏分屏渲染 渲染设置GPU渲染引擎推荐最大采样 切换摄像机渲染图片渲染采样512和4096差异512采样4096采样 渲染建议 我个人的Blender专栏 Blender简单教学 前言 渲染是从白模到成品的过程&…

CEC2018动态多目标优化算法:基于自适应启动策略的混合交叉动态约束多目标优化算法(MC-DCMOEA)求解CEC2018

一、动态多目标优化问题 1.1问题定义 1.2 动态支配关系定义 二、 基于自适应启动策略的混合交叉动态多目标优化算法 基于自适应启动策略的混合交叉动态多目标优化算法&#xff08;Mixture Crossover Dynamic Constrained Multi-objective Evolutionary Algorithm Based on Se…

药物 3D 打印新突破:圣地亚哥大学用机器学习筛选喷墨打印生物墨水,准确率高达 97.22%

内容一览&#xff1a;药物喷墨打印是一种高度灵活和智能化的制药方式。据相关报告统计&#xff0c;该领域市场规模将在不久的未来呈现指数级增长。过往&#xff0c;筛选合适生物墨水的方法费时且费力&#xff0c;因此也成为药物喷墨打印领域面临的主要挑战之一。为解决这一问题…

禅意工作-诗意生活

“禅意工作&#xff0c;诗意生活”能做到这两点&#xff0c;非常非常非常难。 AI的解释&#xff1a; “禅意工作&#xff0c;诗意生活”是一种追求内心平和与幸福的生活方式&#xff0c;它将工作与生活相结合&#xff0c;达到一种和谐的状态。以下是一些关于如何实现“禅意工…

雅思词汇怎样在短期内进行突破?

雅思的考试对词汇量的要求是比较高的&#xff0c;那么该怎样才能高效的积累呢&#xff1f;和小编一起来看看雅思词汇怎样在短期内进行突破&#xff1f; 词汇突破 1&#xff09;制定合理的计划&#xff0c;反复循环 背单词是一个非常繁重的任务&#xff0c;它需要大量的精力。…

协同过滤 springboot+vue基于java的个性化图书推荐系统_1k4p4

在飞速发展的信息时代&#xff0c;随着网络学习的的普及&#xff0c;大量的学习平台和大量的图书数量迅速膨胀&#xff0c;使得学生在进行网络学习时面临“数据爆炸”和“数据过载”的情况&#xff0c;无法寻找到适合自己的图书。在面对着越来越多的图书资源&#xff0c;如何快…

AI很渴:chatGPT交流一次=喝掉一瓶水,GPT3训练=填满核反应堆

流行的大型语言模型&#xff08;LLM&#xff09;&#xff0c;如OpenAI的ChatGPT和Google的Bard&#xff0c;耗能巨大&#xff0c;需要庞大的服务器农场提供足够的数据来训练这些强大的程序。对这些数据中心进行冷却也使得AI聊天机器人对水的需求量极大。新的研究表明&#xff0…

五种网络 I/O 模型

文章目录 1. 阻塞式 I/O 模型2. 非阻塞式 I/O 模型3. I/O 多路复用4. 信号驱动式 I/O5. 异步 I/O6. I/O 模型的分类 Unix 下有五种可用的 I/O 模型&#xff1a; 阻塞式 I/O 非阻塞式 I/O I/O 多路复用&#xff08;select/poll/epoll&#xff09; 信号驱动式 I/O&#xff08;…

MongoDB远程复制集集群((两台服务器,8个实例))

第三阶段基础 时 间&#xff1a;2023年7月4日 参加人&#xff1a;全班人员 内 容&#xff1a; MongoDB远程复制集集群 目录 MongoDB远程复制集集群 实验环境&#xff1a;&#xff08;两台服务器&#xff0c;8个实例&#xff09; 环境部署&#xff1a; 安装部署 实 …

hive和datax數據採集數量對不上

hive和datax數據採集數量對不上 對數據的時候發現有些對不上&#xff0c;在hive中 staff_id DF67B3FC-02DD-4142-807A-DF4A75A4A22E’的數據只有1033 而在mysql中發現staff_id DF67B3FC-02DD-4142-807A-DF4A75A4A22E’的數據有4783條記錄&#xff08;昨天的記錄是4781&#…