位置: 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即将发布,上千名人士却紧急叫停(强大到无需疼无需宠,却幸运到有人宠有人疼什么意思)

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

  • 快速增加新浪微博粉丝的经验(新浪微博如何快速涨粉)

    快速增加新浪微博粉丝的经验(新浪微博如何快速涨粉)

  • win7结束支持时间(win7支持已结束怎么办)

    win7结束支持时间(win7支持已结束怎么办)

  • word标题字符间距怎么设置(word标题字符间距在哪里设置)

    word标题字符间距怎么设置(word标题字符间距在哪里设置)

  • 已发朋友圈如何改可见(已发朋友圈如何取消分组可见)

    已发朋友圈如何改可见(已发朋友圈如何取消分组可见)

  • switch内存卡买多大(switch内存卡买多少g)

    switch内存卡买多大(switch内存卡买多少g)

  • 大门封条格式用word怎么打(大门封条格式用什么颜色)

    大门封条格式用word怎么打(大门封条格式用什么颜色)

  • 手机怎么填写docx(手机怎么填写docx文件)

    手机怎么填写docx(手机怎么填写docx文件)

  • iphonex自动重启(iphonex自动重启频繁电池维修)

    iphonex自动重启(iphonex自动重启频繁电池维修)

  • 苹果还原位置与隐私有什么用(苹果还原位置与隐私会有什么影响)

    苹果还原位置与隐私有什么用(苹果还原位置与隐私会有什么影响)

  • ipencil充电多长时间(ipencil充满电用多久)

    ipencil充电多长时间(ipencil充满电用多久)

  • 手机听话的声音特别小怎么办(手机听话的声音怎么设置)

    手机听话的声音特别小怎么办(手机听话的声音怎么设置)

  • cat5支持千兆吗(cat5支持千兆网络吗)

    cat5支持千兆吗(cat5支持千兆网络吗)

  • 台式机可用蓝牙耳机吗(台式机可用蓝牙鼠标吗)

    台式机可用蓝牙耳机吗(台式机可用蓝牙鼠标吗)

  • 计算机的运算器主要功能是(计算机的运算器控制器及内存储器统称为)

    计算机的运算器主要功能是(计算机的运算器控制器及内存储器统称为)

  • htcu11怎么截图(htcu11手机)

    htcu11怎么截图(htcu11手机)

  • 8p充满电一般要多长时间(8p充满电一般要多少度电)

    8p充满电一般要多长时间(8p充满电一般要多少度电)

  • 苹果消费如何退费(苹果消费如何退货)

    苹果消费如何退费(苹果消费如何退货)

  • 手机服务密码几位数(手机服务密码一般是什么数字)

    手机服务密码几位数(手机服务密码一般是什么数字)

  • 手机qq天气怎么开启(手机qq天气怎么恢复)

    手机qq天气怎么开启(手机qq天气怎么恢复)

  • 手机自动黑屏怎么回事(手机自动黑屏怎么打开)

    手机自动黑屏怎么回事(手机自动黑屏怎么打开)

  • soul怎么找谁看过我(soul怎么查找好友)

    soul怎么找谁看过我(soul怎么查找好友)

  • 苹果x原彩显示耗电吗(苹果x原彩显示不见了)

    苹果x原彩显示耗电吗(苹果x原彩显示不见了)

  • iphone抬头灯怎么设置(苹果手机的抬头灯)

    iphone抬头灯怎么设置(苹果手机的抬头灯)

  • 时标网络图关键线路怎么找(时标网络图关键线路有几条)

    时标网络图关键线路怎么找(时标网络图关键线路有几条)

  • 如何将抖音黑名单里的人彻底删除(如何将抖音黑名单拉出来)

    如何将抖音黑名单里的人彻底删除(如何将抖音黑名单拉出来)

  • iphonexr支持5g吗(iphonexr支持5g网络吗)

    iphonexr支持5g吗(iphonexr支持5g网络吗)

  • linux如何分区(Linux如何分区、格式化及挂载)

    linux如何分区(Linux如何分区、格式化及挂载)

  • discuz 发帖默认权限 模板修改方法(discuz发帖标签)

    discuz 发帖默认权限 模板修改方法(discuz发帖标签)

  • 一般纳税人购进货物用于免征增值税项目
  • 销项税额的计算方法
  • 员工交通费可以税前扣除吗
  • 消费卡预付卡能入账吗
  • 加计抵减申报表填写说明
  • 设定受益计划会计处理案例
  • 委托加工物资两种情况例题
  • 企业搬迁到外省之前的债务怎么处理
  • 个人独资企业服务中心是干嘛的
  • 行政单位往来款项长期未清理
  • 一般纳税人从按照简易计税方法依照3%
  • 招行理财产品哪些可靠
  • 小微企业免征增值税申报表怎样填
  • 污水处理厂的财务处理流程
  • 企业筹建期间的广告费和业务宣传费
  • 预提未收的租金怎么入账
  • 装修工程款如何记账
  • 库存商品结转会计分录
  • 询证函有法律效力吗
  • 应收账款无法收回确认为坏账会计分录
  • win11怎么用win10界面
  • 路由器网速慢怎么设置
  • 企业从政府取得的经济资源均应当
  • 专项维修基金会计核算应当遵循及时性原则
  • win10关闭端口号
  • 招标场地费计入什么科目
  • PHP:rawurlencode()的用法_url函数
  • 限额领料单一般一式几联
  • vue public assets
  • 职工教育经费列支范围规定
  • 衡量一个企业经营状况
  • vue3 global
  • php删除数据
  • 应收账款转让的限制约定
  • 外贸出口退税进项发票勾选
  • php获取数据
  • 分配结转制造费用时借方科目?
  • 如何用java写接口
  • jmeter接口串联
  • 开发成本属于哪个会计准则
  • yolov5训练自己的模型配置到单片机
  • 如何让header居中
  • 计提票面利息
  • 财务公司可以开立一般账户吗
  • 应付短期租入固定资产的租金计入什么科目
  • 成本收入核算表
  • python文档怎么查看
  • 织梦文章标题显示不全
  • mysql建表的完整步骤
  • discuz管理中心登陆
  • 费用减少利润减少的情况
  • 购入不动产的税率是多少
  • 付给对方钱对方应该怎么写
  • 转增资本需要交税吗
  • 资本公积怎么计提
  • 发表文章开什么发票
  • 生产过程中产品质量问题
  • 其他业务收入的现金流量项目
  • 银行存款利息的结算方式
  • 租金收入分摊政策规定
  • sql server的修改语句
  • winxp开机提示explorer.exe
  • win8 开机启动
  • centos8 php7.4
  • win10动态磁贴照片如何删除
  • win8.1无法关机怎么回事
  • linux安装pip2
  • angular.js
  • linux怎么添加新用户
  • android edittext被系统键盘遮挡
  • linux shell脚本攻略(第3版)
  • unity uishader
  • pygame rect.move
  • jquery操作html代码
  • 新手入门常用代词有哪些
  • 智行火车票电子报销凭证
  • 江西省国家税务局李德平
  • 天津住房公积金管理中心官网
  • 北京市社工证报考要求
  • 什么是印花税,印花税有哪些特点
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设