🌓 天气与日历 切换到窄版

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 100|回复: 0

[html模板] 520恋爱时间记录html源码

[复制链接]

2971

主题

4

回帖

3035

积分

管理员

积分
3035
发表于 2024-2-29 14:27:39 | 显示全部楼层 |阅读模式
今天就是520了,糖粥穷逼一个除了收集发布免费资源实在没有什么更多的能送给各位看官老爷了!
分享一段刚刚看到的html源码,直接新建html文件将代码全部粘贴进去访问即可!
一起来记录我们的爱情吧!
二更:刚刚分享到群里,群里的小伙伴想要加上背景音乐,那好吧。。。
三更:有加了一版动态打字效果的,喜欢的小伙伴自己自己改为想对他/她说的话吧!
在中的title标签之下添加以下这行代码添加背景音乐,没有服务器的小伙伴可编辑好html页面后发给糖粥挂到糖粥的服务器哟!
  1. <embed src="music/We Don't Talk Anymore.mp3" autostart="true" loop="true" hidden="true"></embed>
复制代码

分享一个音乐链接:山楂树の恋

520恋爱时间记录html源码

520恋爱时间记录html源码



恋爱时间记录代码:
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>love</title>
  6. <link href="favicon.ico" rel="shortcut icon" />
  7. <style>
  8. body{
  9.   overflow: hidden;
  10.   margin: 0;
  11. }
  12. h1{
  13.   position: fixed;
  14.   top: 50%;
  15.   left: 0;
  16.   width: 100%;
  17.   text-align: center;
  18.   transform:translateY(-50%);
  19.   font-family: 'Love Ya Like A Sister', cursive;
  20.   font-size: 40px;
  21.   color: #c70012;
  22.   padding: 0 20px;
  23. }
  24. h1 span{
  25.     font-size:20px;
  26. }
  27. </style>

  28. </head>
  29. <body>
  30. <h1 id="h1"></h1>
  31. <canvas></canvas>

  32. <script>
  33. var canvas = document.querySelector("canvas"),
  34.   ctx = canvas.getContext("2d");

  35. var ww,wh;

  36. function onResize(){
  37.   ww = canvas.width = window.innerWidth;
  38.   wh = canvas.height = window.innerHeight;
  39. }

  40. ctx.strokeStyle = "red";
  41. ctx.shadowBlur = 25;
  42. ctx.shadowColor = "hsla(0, 100%, 60%,0.5)";

  43. var precision = 100;
  44. var hearts = [];
  45. var mouseMoved = false;
  46. function onMove(e){
  47.   mouseMoved = true;
  48.   if(e.type === "touchmove"){
  49.     hearts.push(new Heart(e.touches[0].clientX, e.touches[0].clientY));
  50.     hearts.push(new Heart(e.touches[0].clientX, e.touches[0].clientY));
  51.   }
  52.   else{
  53.     hearts.push(new Heart(e.clientX, e.clientY));
  54.     hearts.push(new Heart(e.clientX, e.clientY));
  55.   }
  56. }

  57. var Heart = function(x,y){
  58.   this.x = x || Math.random()*ww;
  59.   this.y = y || Math.random()*wh;
  60.   this.size = Math.random()*2 + 1;
  61.   this.shadowBlur = Math.random() * 10;
  62.   this.speedX = (Math.random()+0.2-0.6) * 8;
  63.   this.speedY = (Math.random()+0.2-0.6) * 8;
  64.   this.speedSize = Math.random()*0.05 + 0.01;
  65.   this.opacity = 1;
  66.   this.vertices = [];
  67.   for (var i = 0; i < precision; i++) {
  68.     var step = (i / precision - 0.5) * (Math.PI * 2);
  69.     var vector = {
  70.       x : (15 * Math.pow(Math.sin(step), 3)),
  71.       y : -(13 * Math.cos(step) - 5 * Math.cos(2 * step) - 2 * Math.cos(3 * step) - Math.cos(4 * step))
  72.     }
  73.     this.vertices.push(vector);
  74.   }
  75. }

  76. Heart.prototype.draw = function(){
  77.   this.size -= this.speedSize;
  78.   this.x += this.speedX;
  79.   this.y += this.speedY;
  80.   ctx.save();
  81.   ctx.translate(-1000,this.y);
  82.   ctx.scale(this.size, this.size);
  83.   ctx.beginPath();
  84.   for (var i = 0; i < precision; i++) {
  85.     var vector = this.vertices[i];
  86.     ctx.lineTo(vector.x, vector.y);
  87.   }
  88.   ctx.globalAlpha = this.size;
  89.   ctx.shadowBlur = Math.round((3 - this.size) * 10);
  90.   ctx.shadowColor = "hsla(0, 100%, 60%,0.5)";
  91.   ctx.shadowOffsetX = this.x + 1000;
  92.   ctx.globalCompositeOperation = "screen"
  93.   ctx.closePath();
  94.   ctx.fill()
  95.   ctx.restore();
  96. };


  97. function render(a){
  98.   requestAnimationFrame(render);

  99.   hearts.push(new Heart())
  100.   ctx.clearRect(0,0,ww,wh);
  101.   for (var i = 0; i < hearts.length; i++) {
  102.     hearts[i].draw();
  103.     if(hearts[i].size <= 0){
  104.       hearts.splice(i,1);
  105.       i--;
  106.     }
  107.   }
  108. }


  109. onResize();
  110. window.addEventListener("mousemove", onMove);
  111. window.addEventListener("touchmove", onMove);
  112. window.addEventListener("resize", onResize);
  113. requestAnimationFrame(render);

  114. window.onload=function starttime(){
  115.         time(h1,'2017/7/4');     // 在一起的时间
  116.         ptimer = setTimeout(starttime,1000); // 添加计时器
  117. }

  118.     function time(obj,futimg){
  119.         var nowtime = new Date().getTime(); // 现在时间转换为时间戳
  120.         var futruetime =  new Date(futimg).getTime(); // 未来时间转换为时间戳
  121.         var msec = nowtime-futruetime; // 毫秒 未来时间-现在时间
  122.         var time = (msec/1000);  // 毫秒/1000
  123.         var day = parseInt(time/86400); // 天  24*60*60*1000
  124.         var hour = parseInt(time/3600)-24*day;    // 小时 60*60 总小时数-过去的小时数=现在的小时数
  125.         var minute = parseInt(time%3600/60); // 分 -(day*24) 以60秒为一整份 取余 剩下秒数 秒数/60 就是分钟数
  126.         var second = parseInt(time%60);  // 以60秒为一整份 取余 剩下秒数
  127. //              console.log(hour+":"+minute+":"+second)
  128. //              alert(hour)
  129.         obj.innerHTML="亲爱的<br>咱俩在一起的时间已经:<br>"+day+"天"+hour+"小时"+minute+"分"+second+"秒"+"了<br><span>一时间不知道从哪说起,真爱来了,我们要好好把握。<br>不管面临多大的压力,不管前面的路如何崎岖.<br>不管经历过什么,我仍坚信最浪漫的事就是和你一起慢慢变老.<br>相信中间的计时器,将永远继续下去,直至数据溢出.</span>"

  130.         return true;
  131.     }
  132. </script>

  133. </body>
  134. </html>
复制代码
动态打字代码:
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>你是我的山楂树之恋</title>
  6. <embed src="http://www.170mv.com/kw/antiserver.kuwo.cn/anti.s?rid=MUSIC_51498122&response=res&format=mp3|aac&type=convert_url&br=128kmp3&agent=iPhone&callback=getlink&jpcallback=getlink.mp3" autostart="true" loop="true" hidden="true"></embed>
  7. <link href="favicon.ico" rel="shortcut icon" />
  8. <style>
  9. body{
  10.   overflow: hidden;
  11.   margin: 0;
  12. }
  13. h1{
  14.   position: fixed;
  15.   top: 50%;
  16.   left: 0;
  17.   width: 100%;
  18.   text-align: center;
  19.   transform:translateY(-50%);
  20.   font-family: 'Love Ya Like A Sister', cursive;
  21.   font-size: 40px;
  22.   color: #c70012;
  23.   padding: 0 20px;
  24. }
  25. h1 span{
  26.     font-size:20px;
  27. }
  28. </style>

  29. </head>
  30. <body>
  31. <h1 id="h1"></h1>
  32. <canvas></canvas>

  33. <script>
  34. var canvas = document.querySelector("canvas"),
  35.   ctx = canvas.getContext("2d");

  36. var ww,wh;

  37. function onResize(){
  38.   ww = canvas.width = window.innerWidth;
  39.   wh = canvas.height = window.innerHeight;
  40. }

  41. ctx.strokeStyle = "red";
  42. ctx.shadowBlur = 25;
  43. ctx.shadowColor = "hsla(0, 100%, 60%,0.5)";

  44. var precision = 100;
  45. var hearts = [];
  46. var mouseMoved = false;
  47. function onMove(e){
  48.   mouseMoved = true;
  49.   if(e.type === "touchmove"){
  50.     hearts.push(new Heart(e.touches[0].clientX, e.touches[0].clientY));
  51.     hearts.push(new Heart(e.touches[0].clientX, e.touches[0].clientY));
  52.   }
  53.   else{
  54.     hearts.push(new Heart(e.clientX, e.clientY));
  55.     hearts.push(new Heart(e.clientX, e.clientY));
  56.   }
  57. }

  58. var Heart = function(x,y){
  59.   this.x = x || Math.random()*ww;
  60.   this.y = y || Math.random()*wh;
  61.   this.size = Math.random()*2 + 1;
  62.   this.shadowBlur = Math.random() * 10;
  63.   this.speedX = (Math.random()+0.2-0.6) * 8;
  64.   this.speedY = (Math.random()+0.2-0.6) * 8;
  65.   this.speedSize = Math.random()*0.05 + 0.01;
  66.   this.opacity = 1;
  67.   this.vertices = [];
  68.   for (var i = 0; i < precision; i++) {
  69.     var step = (i / precision - 0.5) * (Math.PI * 2);
  70.     var vector = {
  71.       x : (15 * Math.pow(Math.sin(step), 3)),
  72.       y : -(13 * Math.cos(step) - 5 * Math.cos(2 * step) - 2 * Math.cos(3 * step) - Math.cos(4 * step))
  73.     }
  74.     this.vertices.push(vector);
  75.   }
  76. }

  77. Heart.prototype.draw = function(){
  78.   this.size -= this.speedSize;
  79.   this.x += this.speedX;
  80.   this.y += this.speedY;
  81.   ctx.save();
  82.   ctx.translate(-1000,this.y);
  83.   ctx.scale(this.size, this.size);
  84.   ctx.beginPath();
  85.   for (var i = 0; i < precision; i++) {
  86.     var vector = this.vertices[i];
  87.     ctx.lineTo(vector.x, vector.y);
  88.   }
  89.   ctx.globalAlpha = this.size;
  90.   ctx.shadowBlur = Math.round((3 - this.size) * 10);
  91.   ctx.shadowColor = "hsla(0, 100%, 60%,0.5)";
  92.   ctx.shadowOffsetX = this.x + 1000;
  93.   ctx.globalCompositeOperation = "screen"
  94.   ctx.closePath();
  95.   ctx.fill()
  96.   ctx.restore();
  97. };


  98. function render(a){
  99.   requestAnimationFrame(render);

  100.   hearts.push(new Heart())
  101.   ctx.clearRect(0,0,ww,wh);
  102.   for (var i = 0; i < hearts.length; i++) {
  103.     hearts[i].draw();
  104.     if(hearts[i].size <= 0){
  105.       hearts.splice(i,1);
  106.       i--;
  107.     }
  108.   }
  109. }


  110. onResize();
  111. window.addEventListener("mousemove", onMove);
  112. window.addEventListener("touchmove", onMove);
  113. window.addEventListener("resize", onResize);
  114. requestAnimationFrame(render);

  115. let divTyping = document.getElementById('h1')
  116. let i = 0,
  117.   timer = 0,
  118.   str = "山楂树の恋<br><br>我的山楂树之恋<br>只有是和你才会纯洁<br>可以丢弃<br>我的底线<br>锁定与你的是我视线<br>我的山楂树之恋<br>永远站在你的身边<br>我保证我的爱不会变";

  119. function typing () {
  120.   if (i <= str.length) {
  121.     divTyping.innerHTML = str.slice(0, i++) + '_'
  122.     timer = setTimeout(typing, 200)
  123.   }
  124.   else {
  125.     divTyping.innerHTML = str//结束打字,移除 _ 光标
  126.     clearTimeout(timer)
  127.   }
  128. }
  129. typing()
  130. </script>

  131. </body>
  132. </html>
复制代码


扫码关注微信公众号,及时获取最新资源信息!下载附件优惠VIP会员5折;永久VIP免费
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明:
1、本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与商业和非法行为,请在24小时之内自行删除!
2、本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,请勿任何商业目的与商业用途。
3、若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
4、论坛的所有内容都不保证其准确性,完整性,有效性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
5、用户使用本网站必须遵守适用的法律法规,对于用户违法使用本站非法运营而引起的一切责任,由用户自行承担
6、本站所有资源来自互联网转载,版权归原著所有,用户访问和使用本站的条件是必须接受本站“免责声明”,如果不遵守,请勿访问或使用本网站
7、本站使用者因为违反本声明的规定而触犯中华人民共和国法律的,一切后果自己负责,本站不承担任何责任。
8、凡以任何方式登陆本网站或直接、间接使用本网站资料者,视为自愿接受本网站声明的约束。
9、本站以《2013 中华人民共和国计算机软件保护条例》第二章 “软件著作权” 第十七条为原则:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。若有学员需要商用本站资源,请务必联系版权方购买正版授权!
10、本网站如无意中侵犯了某个企业或个人的知识产权,请来信【站长信箱312337667@qq.com】告之,本站将立即删除。
郑重声明:
本站所有资源仅供用户本地电脑学习源代码的内含设计思想和原理,禁止任何其他用途!
本站所有资源、教程来自互联网转载,仅供学习交流,不得商业运营资源,不确保资源完整性,图片和资源仅供参考,不提供任何技术服务。
本站资源仅供本地编辑研究学习参考,禁止未经资源商正版授权参与任何商业行为,违法行为!如需商业请购买各资源商正版授权
本站仅收集资源,提供用户自学研究使用,本站不存在私自接受协助用户架设游戏或资源,非法运营资源行为。
快速回复 返回顶部 返回列表