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

最有效的网站推广公司杭州专业网站营销

最有效的网站推广公司,杭州专业网站营销,加强网站建设的通知,微信公众号的小程序怎么开发这段代码实现了一个基于HTML5 Canvas的高级粒子效果#xff0c;用户可以通过鼠标与粒子进行交互。下面是对代码的详细解析#xff1a; HTML部分 使用!DOCTYPE html声明文档类型。html标签内包含了整个网页的内容。head部分定义了网页的标题#x… 这段代码实现了一个基于HTML5 Canvas的高级粒子效果用户可以通过鼠标与粒子进行交互。下面是对代码的详细解析 HTML部分 使用!DOCTYPE html声明文档类型。html标签内包含了整个网页的内容。head部分定义了网页的标题高级粒子效果和一些基本样式如设置页面无边距、隐藏滚动条以及黑色背景。body包含一个canvas元素用于绘图。 CSS部分 设置body的边距为0并隐藏溢出内容同时设置背景颜色为黑色。canvas块级显示确保其占据整个视窗。 JavaScript部分 初始化Canvas 获取canvas元素并获取2D绘图上下文。定义resize函数动态调整画布大小以适应窗口尺寸并在窗口大小改变时调用此函数。 创建粒子系统 定义了粒子数组particles和粒子数量particleCount。定义鼠标位置对象mouse用于存储鼠标坐标。Particle类负责创建单个粒子包括随机初始化位置、速度、大小等属性并提供重置、绘制及更新方法。 粒子逻辑 初始化粒子数组填充指定数量的粒子实例。监听鼠标移动事件实时更新鼠标位置。 动画循环 animate函数作为主循环每帧都会清除屏幕带透明度遍历所有粒子执行更新和绘制操作。在粒子间根据距离条件绘制连线增加视觉效果。 粒子特性 粒子具有引力跟随鼠标的功能。边界检测使粒子在到达画布边缘时反弹。动态调整粒子大小创造更生动的效果。 !DOCTYPE html html head     title高级粒子效果/title     style         body {             margin: 0;             overflow: hidden;             background: #000;         }         canvas {             display: block;         }     /style /head body     canvas idcanvas/canvas script         const canvas document.getElementById(canvas);         const ctx canvas.getContext(2d);                  // 设置画布尺寸         function resize() {             canvas.width window.innerWidth;             canvas.height window.innerHeight;         }         resize();         window.addEventListener(resize, resize); // 创建粒子数组         const particles [];         const particleCount 100;         const mouse { x: null, y: null }; // 粒子构造函数         class Particle {             constructor() {                 this.reset();                 this.baseSize 2;             } reset() {                 this.x Math.random() * canvas.width;                 this.y Math.random() * canvas.height;                 this.vx -1 Math.random() * 2;                 this.vy -1 Math.random() * 2;                 this.radius this.baseSize Math.random() * 2;             } draw() {                 ctx.beginPath();                 ctx.arc(this.x, this.y, this.radius, 0, Math.PI * 2);                 ctx.fillStyle hsl(${(this.x/canvas.width)*360}, 70%, 50%);                 ctx.fill();             } update() {                 // 鼠标引力                 const dx mouse.x - this.x;                 const dy mouse.y - this.y;                 const distance Math.sqrt(dx*dx dy*dy);                 const force (canvas.width/2 - distance) / canvas.width/2; if (distance canvas.width/2) {                     this.x dx * force * 0.1;                     this.y dy * force * 0.1;                 } this.x this.vx;                 this.y this.vy; // 边界反弹                 if (this.x 0 || this.x canvas.width) this.vx * -1;                 if (this.y 0 || this.y canvas.height) this.vy * -1; // 动态大小                 this.radius this.baseSize Math.abs(Math.sin(Date.now()*0.001 this.x)) * 2;             }         } // 初始化粒子         for (let i 0; i particleCount; i) {             particles.push(new Particle());         } // 鼠标移动监听         canvas.addEventListener(mousemove, (e) {             mouse.x e.clientX;             mouse.y e.clientY;         }); // 动画循环         function animate() {             ctx.fillStyle rgba(0, 0, 0, 0.1);             ctx.fillRect(0, 0, canvas.width, canvas.height); particles.forEach((p1, i) {                 p1.update();                 p1.draw(); // 绘制粒子间连线                 particles.slice(i).forEach(p2 {                     const dx p1.x - p2.x;                     const dy p1.y - p2.y;                     const distance Math.sqrt(dx*dx dy*dy); if (distance 100) {                         ctx.beginPath();                         ctx.strokeStyle hsl(${(i/particleCount)*360}, 70%, 50%);                         ctx.lineWidth 0.5;                         ctx.moveTo(p1.x, p1.y);                         ctx.lineTo(p2.x, p2.y);                         ctx.stroke();                     }                 });             }); requestAnimationFrame(animate);         } animate();     /script /body /html
http://www.hkea.cn/news/14413105/

相关文章:

  • 贵州建设监理网站培训通知栏营销型网站建设的特点表现
  • 绍兴做网站的公司电子商务网站建设ppt模板下载
  • 怎样查到一些做品牌包的网站网站备案一天通过
  • 蓝色系的网站优秀的企业网站
  • 福州网站建设效果营销型网站建设实战
  • 唐山网站建设找煌途微信小程序制作文档
  • 2023免费网站推广沈阳做机床的公司网站
  • 如何看网站做没做推广wordpress 本地 搭建
  • 学校英文版网站建设方案ios wordpress使用
  • 建设银行网站查询网站专业优化公司
  • 网站的360度全景图片怎么做关键词优化哪家好
  • 网站外连移动建站平台
  • 合肥建站公司哪益阳网络营销
  • 网站数据库是干什么的网站设计与建设第一章
  • 广东万高建设网站免费建站免费网站
  • 优惠券怎做网站wordpress自动采集源码
  • 做网站编程语言用软件做的网站权限管理
  • 贵州网站开发流程北京app开发制作
  • 做网站是不是就能上传东西网页动效 wordpress
  • 国外网站推广服务空间设计网站
  • 宁波网站制作哪家全面腾讯域名购买
  • 用cms创建自己带数据库的网站聊城seo
  • 网站开发及维护合同外贸的推广平台
  • 温州手机网站制作联系电话网页版梦幻西游三借芭蕉扇
  • 政务网站开发方案品牌建设存在问题
  • iis7 默认网站目录食品包装设计论文
  • 个人博客网站logo泌阳县住房和城乡建设局网站
  • 无代码快速搭建网站自己的网站如何做分销
  • asp网站幻灯片不显示代运营公司网站
  • 禅城区网站建设医院网站前置审批最快多久出来