html canvas 烟花 特效代码

article/2025/8/20 17:40:13

代码如下: 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><title> 真实烟花</title><style>body {padding: 0;}canvas {display: block;}</style>
</head><body><canvas id="canvas"></canvas><script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script><script>$(function () {var canvas = $('#canvas')[0];canvas.width = $(window).width();canvas.height = $(window).height();var ctx = canvas.getContext('2d');// resize$(window).on('resize', function () {canvas.width = $(window).width();canvas.height = $(window).height();ctx.fillStyle = '#000';ctx.fillRect(0, 0, canvas.width, canvas.height);});// initctx.fillStyle = '#000';ctx.fillRect(0, 0, canvas.width, canvas.height);// objectsvar listFire = [];var listFirework = [];var fireNumber = 10;var center = { x: canvas.width / 2, y: canvas.height / 2 };var range = 100;for (var i = 0; i < fireNumber; i++) {var fire = {x: Math.random() * range / 2 - range / 4 + center.x,y: Math.random() * range * 2 + canvas.height,size: Math.random() + 0.5,fill: '#fd1',vx: Math.random() - 0.5,vy: -(Math.random() + 4),ax: Math.random() * 0.02 - 0.01,far: Math.random() * range + (center.y - range)};fire.base = {x: fire.x,y: fire.y,vx: fire.vx};//listFire.push(fire);}function randColor() {var r = Math.floor(Math.random() * 256);var g = Math.floor(Math.random() * 256);var b = Math.floor(Math.random() * 256);var color = 'rgb($r, $g, $b)';color = color.replace('$r', r);color = color.replace('$g', g);color = color.replace('$b', b);return color;}(function loop() {requestAnimationFrame(loop);update();draw();})();function update() {for (var i = 0; i < listFire.length; i++) {var fire = listFire[i];//if (fire.y <= fire.far) {// case add fireworkvar color = randColor();for (var i = 0; i < fireNumber * 5; i++) {var firework = {x: fire.x,y: fire.y,size: Math.random() + 1.5,fill: color,vx: Math.random() * 5 - 2.5,vy: Math.random() * -5 + 1.5,ay: 0.05,alpha: 1,life: Math.round(Math.random() * range / 2) + range / 2};firework.base = {life: firework.life,size: firework.size};listFirework.push(firework);}// resetfire.y = fire.base.y;fire.x = fire.base.x;fire.vx = fire.base.vx;fire.ax = Math.random() * 0.02 - 0.01;}//fire.x += fire.vx;fire.y += fire.vy;fire.vx += fire.ax;}for (var i = listFirework.length - 1; i >= 0; i--) {var firework = listFirework[i];if (firework) {firework.x += firework.vx;firework.y += firework.vy;firework.vy += firework.ay;firework.alpha = firework.life / firework.base.life;firework.size = firework.alpha * firework.base.size;firework.alpha = firework.alpha > 0.6 ? 1 : firework.alpha;//firework.life--;if (firework.life <= 0) {listFirework.splice(i, 1);}}}}function draw() {// clearctx.globalCompositeOperation = 'source-over';ctx.globalAlpha = 0.18;ctx.fillStyle = '#000';ctx.fillRect(0, 0, canvas.width, canvas.height);// re-drawctx.globalCompositeOperation = 'screen';ctx.globalAlpha = 1;for (var i = 0; i < listFire.length; i++) {var fire = listFire[i];ctx.beginPath();ctx.arc(fire.x, fire.y, fire.size, 0, Math.PI * 2);ctx.closePath();ctx.fillStyle = fire.fill;ctx.fill();}for (var i = 0; i < listFirework.length; i++) {var firework = listFirework[i];ctx.globalAlpha = firework.alpha;ctx.beginPath();ctx.arc(firework.x, firework.y, firework.size, 0, Math.PI * 2);ctx.closePath();ctx.fillStyle = firework.fill;ctx.fill();}}})</script>
</body></html>

效果如下:

其实这种代码很多 github、gitLab、码云上都有免费的不必 去掏钱 下载模板。

以github为例子:

 github 烟花特效 搜索页

 其它也类似。

总结:

github、gitLab、码云 都是很好的开源社区,要 学会利用。大部分 东西都能找到的哦。

github搜索技巧https://blog.csdn.net/luoyayun361/article/details/88374672


http://chatgpt.dhexx.cn/article/2CCsGr11.shtml

相关文章

html星空代码在线,怎么操作html星空特效代码

html不是一种编程语言&#xff0c;而是一种标记语言 &#xff0c;是网页制作所必备的。这些代码式的专业语言我们在普通的工作中运用的非常少&#xff0c;它的通用性可以把存放在一台电脑中的文本或图形与存放在另一台电脑中的文本或图形方便地联系在一起&#xff0c;形成有机的…

HTML龙卷风特效代码

今天&#xff0c;我给大家带来了短视频平台上超火的HTML龙卷风特效代码&#xff0c;如下&#xff1a; <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>粒子漩涡特效</title> <style> html,body{ margin:0px…

html爱心特效代码教程

一、图片展示 二、使用教程 1.桌面新建文本文档 2.将以下代码放入 3.将后缀改为.html 三、代码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME&…

html爱心特效代码

New Document /* * RequestAnimationFrame polyfill by Erik Mller */ (function(){var b0;var c[“ms”,“moz”,“webkit”,“o”];for(var a0;a<c.length&&!window.requestAnimationFrame;a){window.requestAnimationFramewindow[c[a]“RequestAnimationFrame”…

html简单特效代码,html特效代码大全

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 23. 永远都会带着框架 if (window top)top.location.href "frames.htm"; //frames.htm为框架网页 // --> 24. 防止被人frame if (top.location ! self.location)top.locationself.location; // --> 25. 网页将不…

Android 科大讯飞 语音听写

这几天在搞一个语音识别的项目 用到i的是科大讯飞的语音服务&#xff0c;第一次搞语音识别&#xff0c;在这里记录一下&#xff0c;也希望对大家有用。废话不多说进入正题 一、要用到科大讯飞的语音识别功能&#xff0c;肯定是要他的开发者平台申请账号&#xff0c;创建应用&a…

Python调用科大讯飞语音听写的SDK包

一、如何下载科大讯飞语音听写的SDK包 1.1、注册下载语音听写SDK包 **第一步&#xff1a;**登录讯飞开放平台&#xff0c;找到产品服务——“语音听写”&#xff0c;点击“立即开通” **第二步&#xff1a;**创建新应用 **第三步&#xff1a;**创建应用&#xff0c;填写信息…

C# 实现语音听写

本文系原创&#xff0c;禁止转载。 分享如何使用c#对接科大讯飞语音听写服务&#xff0c;简单高效地实现语音听写。 实现语音听写主要分为录音和语音识别两部分&#xff1b;录音是指获取设备声卡端口的音频数据并将之保存为音频文件&#xff0c;语音识别就是将刚才所述的音频文…

讯飞语音听写

第一步&#xff1a;将下载好的Sdk解压&#xff0c;将压缩文件中的libs下的jar文件放到项目中的libs包下&#xff0c;将压缩文件中的lisb下除jar文件放到main下的jniLibs包中 第二步&#xff1a;Sdk初始化,建议选择在自定义的application中初始化。 //初始化讯飞语音SpeechUtil…

讯飞语音——带你简单实现语音听写

语音听写 de 简单实现 一、前言 如果你没有在讯飞语音平台上创建应用&#xff0c;请先参考讯飞语音的详细配置使用 二、功能描述 语音听写和语音合成都是较为基础也是最常使用的两个基本功能。 语音合成是将文本转化为语音说出来&#xff0c;就是读文章。 语音听写是什么呢&a…

使用讯飞实现语音听写与语音合成功能

一、准备工作 1、首先你需要去科大讯飞的官网去注册一个账号&#xff0c;怎么注册我就不说了&#xff0c;然后去控制台&#xff0c;创建新应用。 2、下载对应的sdk&#xff0c;点击sdk下载&#xff0c;记住这里的APPID码&#xff0c;sdk初始化要用。 3、下载语音听写和在线语…

科大讯飞语音听写在vue2中的使用

安装 worker-loader版本是2.0.0 vue.config.js的配置如下chainWebpack:(config)=>{config.output.globalObject("this"); }, configureWebpack: (config) => {config.module.rules.push({test: /\.worker.js$/,use: {loader: "worker-loader",option…

vue+科大讯飞语音听写功能(解决针对vue new Worker报错问题)

参考1&#xff1a;vue科大讯飞语音听写功能(解决针对vue new Worker报错问题)_Other world的博客-CSDN博客 参考2&#xff1a;vue中使用web worker - Gerryli - 博客园 参考3&#xff1a;将PC浏览器、ZOOM等软件正在播放的音频实时转成文字&#xff01;讯飞语音输入法的妙用 -…

Unity2021接入讯飞语音听写(Android)

使用的引擎工具&#xff1a; Unity2021.3.19 android-studio-2021.1.21 第一步&#xff1a; 新建一个Android项目&#xff08;工程名字随便啦&#xff09; 然后新建一个library &#xff08;同上&#xff0c;库名自己命名吧&#xff09; Android环境目前就算是初步建立好了。 …

vue2中接入讯飞语音听写

首先先登录https://www.xfyun.cn/&#xff0c;在控制台中创建自己的app&#xff0c;并且拿到APPID。 下载crypto-js 与线程worker npm install crypto-js npm install worker-loader 官网中有示例文件&#xff0c;稍微改造一下&#xff0c;封装成组件就能使用了。 transco…

Java 接入讯飞语音听写Speech to Text(STT)功能

标题 讯飞认证配置封装监听器客户端工具 Speech2TextClient.java 对外开放接口对外开放接口实现结果参考 根据官方提供的 WebIATWS 工具扩展修改&#xff0c;接入了讯飞的语音听写(STT)服务 讯飞认证配置 public class XFAuthorityConfig {public static final String hostUr…

html5语音听写流式,iOS 讯飞语音听写(流式版)

最近项目中用到了讯飞的语音识别,然后稍微看了一下,里面有几个值得注意的点,记录一下,先说语音听写(流式版),实时语音转写后期会附上 ,文末有 demo //语音听写(流式版) 语音听写流式版其实没设么好说的,因为直接有 SDK,导入项目就可以了,需要注意的点就是每个创建的 APP 和 SDK…

科大讯飞语音听写(Android)

前面就不废话了&#xff0c;像申请应用&#xff0c;获取SDK等等&#xff0c;我相信大家应该都会的&#xff0c;科大讯飞采用的是两种语音听写功能,一种带有UI&#xff0c;一种没有UI&#xff0c;本人还是比较笨的&#xff0c;所以就写了较为简单的不带UI的语音听写&#xff0c;…

语音转写和语音听写_如何在Windows 10上使用语音听写

语音转写和语音听写 Windows 10’s Fall Creators Update makes voice dictation much easier to use. Now, you can immediately begin dictation by pressing a key WindowsH on your keyboard. You don’t have to dig through the Control Panel and set anything up first…

【超简单】之基于PaddleSpeech搭建个人语音听写服务

一、【超简单】之基于PaddleSpeech搭建个人语音听写服务 1.需求分析 亲们&#xff0c;你们要写会议纪要嘛&#xff1f;亲们&#xff0c;你们要写会议纪要嘛&#xff1f;亲们&#xff0c;你们要写会议纪要嘛&#xff1f; 当您面对成吨的会议录音&#xff0c;着急写会议纪要而…