位置: IT常识 - 正文

【HTML实战】把爱心代码放在自己的网站上是一种什么体验?(怎么把html做成app)

编辑:rootadmin
【HTML实战】把爱心代码放在自己的网站上是一种什么体验?

推荐整理分享【HTML实战】把爱心代码放在自己的网站上是一种什么体验?(怎么把html做成app),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:如何将html中的数据转换到excel中,怎么把html转换成jpg,怎么把html变成jsp,怎么把html做成app,怎么把html变成jsp,html如何,怎么把html变成图片,html如何,内容如对您有帮助,希望把文章链接给更多的朋友!

👨‍💻个人主页:@花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创

收录于专栏 【HTML】

【HTML实战】把爱心代码放在自己的网站上是一种什么体验?(怎么把html做成app)

最近随着电视剧《点燃我温暖你》的火热播出,剧中帅气学霸李洵的炫酷爱心代码也迅速火出了圈,作为一个喜欢动手实践的我来说正是一个大好机会啊,于是我就把代码搬到了自己的网站上,源码我也放在了我的GitHub上,大家有需自取哦~💗

仓库地址:『https://github.com/huawuque404/Love-code』 也欢迎大家star Issues fork 并pr哦,一起来开发更多好看的样式或者动态效果吧!

网站效果:『https://www.huawuque404.cn/love.html』

后面有时间的话我会将各式各样的爱心代码更新在这个仓库里,如果大家感兴趣的话就来和我一起创造爱心吧~😍

今天周末了,大家都要好好吃饭,好好睡觉哦!🎉

拜拜!

GitHub进不去的话,源代码这也有一份,有点长:

<!DOCTYPE html><html><head> <title> 爱心代码 </title> <meta charset="utf-8"> <meta name="Author" content="花无缺"> <meta name="Keywords" content="爱心代码"> <meta name="Description" content="爱心代码"> <link rel="shortcut icon" href="../picture/爱心.png" type="image/x-icon"> <style> html, body { height: 100%; padding: 0; margin: 0; background: #000; } canvas { position: absolute; width: 100%; height: 100%; } </style></head><body> <canvas id="pinkboard"></canvas> <script> var settings = { particles: { length: 500, duration: 2, velocity: 100, effect: -0.75, size: 30, }, }; (function () { var b = 0; var c = ["ms", "moz", "webkit", "o"]; for (var a = 0; a < c.length && !window.requestAnimationFrame; ++a) { window.requestAnimationFrame = window[c[a] + "RequestAnimationFrame"]; window.cancelAnimationFrame = window[c[a] + "CancelAnimationFrame"] || window[c[a] + "CancelRequestAnimationFrame"] } if (!window.requestAnimationFrame) { window.requestAnimationFrame = function (h, e) { var d = new Date().getTime(); var f = Math.max(0, 16 - (d - b)); var g = window.setTimeout(function () { h(d + f) }, f); b = d + f; return g } } if (!window.cancelAnimationFrame) { window.cancelAnimationFrame = function (d) { clearTimeout(d) } } }()); var Point = (function () { function Point(x, y) { this.x = (typeof x !== 'undefined') ? x : 0; this.y = (typeof y !== 'undefined') ? y : 0; } Point.prototype.clone = function () { return new Point(this.x, this.y); }; Point.prototype.length = function (length) { if (typeof length == 'undefined') return Math.sqrt(this.x * this.x + this.y * this.y); this.normalize(); this.x *= length; this.y *= length; return this; }; Point.prototype.normalize = function () { var length = this.length(); this.x /= length; this.y /= length; return this; }; return Point; })(); var Particle = (function () { function Particle() { this.position = new Point(); this.velocity = new Point(); this.acceleration = new Point(); this.age = 0; } Particle.prototype.initialize = function (x, y, dx, dy) { this.position.x = x; this.position.y = y; this.velocity.x = dx; this.velocity.y = dy; this.acceleration.x = dx * settings.particles.effect; this.acceleration.y = dy * settings.particles.effect; this.age = 0; }; Particle.prototype.update = function (deltaTime) { this.position.x += this.velocity.x * deltaTime; this.position.y += this.velocity.y * deltaTime; this.velocity.x += this.acceleration.x * deltaTime; this.velocity.y += this.acceleration.y * deltaTime; this.age += deltaTime; }; Particle.prototype.draw = function (context, image) { function ease(t) { return (--t) * t * t + 1; } var size = image.width * ease(this.age / settings.particles.duration); context.globalAlpha = 1 - this.age / settings.particles.duration; context.drawImage(image, this.position.x - size / 2, this.position.y - size / 2, size, size); }; return Particle; })(); var ParticlePool = (function () { var particles, firstActive = 0, firstFree = 0, duration = settings.particles.duration; function ParticlePool(length) { particles = new Array(length); for (var i = 0; i < particles.length; i++) particles[i] = new Particle(); } ParticlePool.prototype.add = function (x, y, dx, dy) { particles[firstFree].initialize(x, y, dx, dy); firstFree++; if (firstFree == particles.length) firstFree = 0; if (firstActive == firstFree) firstActive++; if (firstActive == particles.length) firstActive = 0; }; ParticlePool.prototype.update = function (deltaTime) { var i; if (firstActive < firstFree) { for (i = firstActive; i < firstFree; i++) particles[i].update(deltaTime); } if (firstFree < firstActive) { for (i = firstActive; i < particles.length; i++) particles[i].update(deltaTime); for (i = 0; i < firstFree; i++) particles[i].update(deltaTime); } while (particles[firstActive].age >= duration && firstActive != firstFree) { firstActive++; if (firstActive == particles.length) firstActive = 0; } }; ParticlePool.prototype.draw = function (context, image) { if (firstActive < firstFree) { for (i = firstActive; i < firstFree; i++) particles[i].draw(context, image); } if (firstFree < firstActive) { for (i = firstActive; i < particles.length; i++) particles[i].draw(context, image); for (i = 0; i < firstFree; i++) particles[i].draw(context, image); } }; return ParticlePool; })(); (function (canvas) { var context = canvas.getContext('2d'), particles = new ParticlePool(settings.particles.length), particleRate = settings.particles.length / settings.particles.duration, time; function pointOnHeart(t) { return new Point( 160 * Math.pow(Math.sin(t), 3), 130 * Math.cos(t) - 50 * Math.cos(2 * t) - 20 * Math.cos(3 * t) - 10 * Math.cos(4 * t) + 25 ); } var image = (function () { var canvas = document.createElement('canvas'), context = canvas.getContext('2d'); canvas.width = settings.particles.size; canvas.height = settings.particles.size; function to(t) { var point = pointOnHeart(t); point.x = settings.particles.size / 2 + point.x * settings.particles.size / 350; point.y = settings.particles.size / 2 - point.y * settings.particles.size / 350; return point; } context.beginPath(); var t = -Math.PI; var point = to(t); context.moveTo(point.x, point.y); while (t < Math.PI) { t += 0.01; point = to(t); context.lineTo(point.x, point.y); } context.closePath(); context.fillStyle = '#ea80b0'; context.fill(); var image = new Image(); image.src = canvas.toDataURL(); return image; })(); function render() { requestAnimationFrame(render); var newTime = new Date().getTime() / 1000, deltaTime = newTime - (time || newTime); time = newTime; context.clearRect(0, 0, canvas.width, canvas.height); var amount = particleRate * deltaTime; for (var i = 0; i < amount; i++) { var pos = pointOnHeart(Math.PI - 2 * Math.PI * Math.random()); var dir = pos.clone().length(settings.particles.velocity); particles.add(canvas.width / 2 + pos.x, canvas.height / 2 - pos.y, dir.x, -dir.y); } particles.update(deltaTime); particles.draw(context, image); } function onResize() { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; } window.onresize = onResize; setTimeout(function () { onResize(); render(); }, 10); })(document.getElementById('pinkboard')); </script></body></html>

🌸欢迎关注我的博客:来和我一起成长吧 🥇往期精彩好文: 📢【HTML基础知识详解】 📢【CSS基础认知】 你们的点赞👍 收藏⭐ 留言📝 关注✅ 是我持续创作,输出优质内容的最大动力! 谢谢!

本文链接地址:https://www.jiuchutong.com/zhishi/300128.html 转载请保留说明!

上一篇:强大到让人无法想象的ChatGPT-5即将发布,上千名人士却紧急叫停(强大到无需疼无需宠,却幸运到有人宠有人疼什么意思)

下一篇:微信小程序 | 小程序的事件处理(微信小程序小窗口)

  • 拼多多怎么查一年前的订单(拼多多怎么查一共花了多少钱)

    拼多多怎么查一年前的订单(拼多多怎么查一共花了多少钱)

  • 抖音怎么看不了谁给我点赞(抖音怎么看不了谁收藏了我的作品)

    抖音怎么看不了谁给我点赞(抖音怎么看不了谁收藏了我的作品)

  • 苹果11来电秀怎么设置(苹果来电秀怎么设置)

    苹果11来电秀怎么设置(苹果来电秀怎么设置)

  • 奇异果vip怎么申请退款(奇异果vip怎么买便宜)

    奇异果vip怎么申请退款(奇异果vip怎么买便宜)

  • 超话如何迅速升到12级(超话快速升级)

    超话如何迅速升到12级(超话快速升级)

  • 电机b3与b5的区别(电机b5和b35有什么区别)

    电机b3与b5的区别(电机b5和b35有什么区别)

  • 八芯网线是千兆线吗(八芯网线是千兆还是万兆)

    八芯网线是千兆线吗(八芯网线是千兆还是万兆)

  • esp是文字文档后缀吗(文件esp是什么意思)

    esp是文字文档后缀吗(文件esp是什么意思)

  • 华为手机大文件是什么(华为手机大文件里面的文件怎么查看)

    华为手机大文件是什么(华为手机大文件里面的文件怎么查看)

  • 拍摄脚本是什么意思(拍摄脚本流程)

    拍摄脚本是什么意思(拍摄脚本流程)

  • 光猫复位是什么意思(光猫复位键是干什么的)

    光猫复位是什么意思(光猫复位键是干什么的)

  • 苹果7p喇叭只有一边响(苹果7手机的喇叭只有为什么一个响)

    苹果7p喇叭只有一边响(苹果7手机的喇叭只有为什么一个响)

  • 快手本地视频保存在哪(快手本地视频保存在哪里)

    快手本地视频保存在哪(快手本地视频保存在哪里)

  • uwp应用是什么意思(uwp版是什么意思)

    uwp应用是什么意思(uwp版是什么意思)

  • 完成域名地址和ip地址转换的系统是(完成域名地址和ip地址转换的服务器)

    完成域名地址和ip地址转换的系统是(完成域名地址和ip地址转换的服务器)

  • 怎样下载音乐到u盘里(怎样下载音乐到mp3)

    怎样下载音乐到u盘里(怎样下载音乐到mp3)

  • 手机如何批量删除微博(手机怎么批量删图片)

    手机如何批量删除微博(手机怎么批量删图片)

  • 小米9pro能装4g卡吗(小米9pro可以用4g网吗)

    小米9pro能装4g卡吗(小米9pro可以用4g网吗)

  • 手机酷狗歌词怎么解锁(手机酷狗歌词怎么显示)

    手机酷狗歌词怎么解锁(手机酷狗歌词怎么显示)

  • 苹果xsmax发热严重怎么解决(苹果xsmax发热严重怎么回事)

    苹果xsmax发热严重怎么解决(苹果xsmax发热严重怎么回事)

  • airpods电脑能用吗(airpods2电脑能用吗)

    airpods电脑能用吗(airpods2电脑能用吗)

  • 小米9后壳是什么材质(小米9 后壳)

    小米9后壳是什么材质(小米9 后壳)

  • 华为键盘声音怎么设置(华为键盘声音怎么设置开关)

    华为键盘声音怎么设置(华为键盘声音怎么设置开关)

  • ipadmini5和mini4对比(ipadmini5跟mini4对比)

    ipadmini5和mini4对比(ipadmini5跟mini4对比)

  • 抖音怎么唱歌对口型(抖音怎么唱歌对口型录完整版)

    抖音怎么唱歌对口型(抖音怎么唱歌对口型录完整版)

  • qq邮件怎么看对方已读(qq邮件怎么看对方是否查看)

    qq邮件怎么看对方已读(qq邮件怎么看对方是否查看)

  • 怎样制作课件幻灯片(如何制作课件幻灯片)

    怎样制作课件幻灯片(如何制作课件幻灯片)

  • 临时文件夹可以删除吗详细介绍(临时 文件夹)

    临时文件夹可以删除吗详细介绍(临时 文件夹)

  • 个人所得税退税操作流程
  • 营业账簿印花税怎么交
  • 以前年度损益调整账务处理分录
  • 建筑业属于货物行业吗
  • 发票未到暂估账务处理
  • 所得税申报时成本数据填错怎么办
  • 车间加班视频
  • 民非企业增值税减免账务处理
  • 子公司分红款没收到,宣告分红可以免税吗
  • 个人劳务费 税
  • 收到上年多缴的企业所得税
  • 普通发票作废怎么验旧
  • 企业用现金购进存货是单选题
  • 当月的费用次月入账可以么
  • 现金日记账定金和实收怎么记
  • 开给天猫的服务费分录如何做
  • 价内税和价外税名词解释
  • 交通补贴可以抵扣个税吗
  • 企业注销时有未抵扣的留抵
  • 一个公司可以有几个公章
  • 存货扣税比是什么意思?
  • 用现金发工资不给怎么办
  • 生产企业销售原材料所取得的收入属于( )
  • 分公司非独立核算是什么意思
  • 固定资产盘亏盘盈账务处理
  • 转让房产缴纳增值税可以用留底税吗
  • 企业所得税季报人数怎么填
  • 公司税务风险怎么解决
  • 普通发票没有进账怎么办
  • 个税逾期申报怎么缴纳罚款
  • 服务外包企业
  • mac计算器怎么变小
  • 生产提供什么产品
  • 建筑劳务公司计提工资怎么做账
  • 普通发票红冲需要填信息表吗
  • 橡皮树的扦插方法和注意事项
  • 政府财政会计核算基础是什么
  • 双层for循环的程序流程图
  • 学生个人网站制作html代码
  • 前端跨域解决方案设计
  • html+php
  • 存货盘盈的账务处理入什么费用
  • 收到专票不认证不抵扣可以吗
  • 宝塔面板在哪
  • 百旺金赋服务费不交会怎么样?
  • 公司如何帮员工补缴社保
  • 政府补助属于营业外收入吗
  • 固定资产备抵科目有哪些
  • 退票凭证丢了怎么办
  • 已经认证抵扣的发票,要退回,怎么处理
  • 收入准则适用范围
  • 电梯折旧率多少
  • 如何核算购进商品
  • 结转完期间损益是不是可以结账了
  • 工程施工的保险费的账务处理
  • 短期理财收益账务分录
  • 价外费用计入哪个科目
  • 工程项目预缴税率
  • 材料采购办法
  • 个人报销费用怎么做分录
  • 事业单位不允许办企业是哪个文件要求的
  • mysql innode
  • 64位CentOs7源码安装mysql-5.6.35过程分享
  • windows server 2008 r2离线激活
  • linux的命令行指的是什么
  • fedora s9
  • win8系统无法连接到网络
  • backtrack5教程
  • windows8更新不了怎么办
  • linux的samba是什么
  • win8如何进入bios
  • linux虚拟空间
  • Bullet(Cocos2dx)之凸多面体形状和组合形状
  • listview的item
  • python绘图题
  • 电子税务局如何签订三方协议扣款
  • 国家税务总局2019年45号公告解读
  • 西安大修基金和契税怎么计算
  • 中国地税国税
  • 药店开给个人的增值税发票是什么样
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设