查看: 307|回复: 10

[特效] 复刻 《万籁音》 (凡哥代码)

[复制链接]
四笑江梅引

九色鹿
发表于 2024-6-19 23:07 | 显示全部楼层 |阅读模式
本帖最后由 司敏儿 于 2024-6-21 12:59 编辑

评分

3

查看全部评分

点评
回复

使用道具

四笑江梅引

九色鹿
 楼主| 发表于 2024-6-19 23:09 | 显示全部楼层
@凡哥  @花简静  


改了  c-c  

去掉变色 ,用了单色
点评
回复

使用道具

四笑江梅引

九色鹿
 楼主| 发表于 2024-6-19 23:10 | 显示全部楼层
不会编歌词 ,上纯音
点评
回复

使用道具

四笑江梅引

九色鹿
 楼主| 发表于 2024-6-19 23:10 | 显示全部楼层
  1. <style>
  2. #tz { margin: 20px auto; width: 1024px; height: 576px; background: url('https://gd-hbimg.huaban.com/9919b2948a5911c74e8c179216102decb960e1d6200023-BhFHIC_fw1200') no-repeat center/cover; box-shadow: 3px 3px 6px gray; z-index: 1; position: relative; }

  3. #tz::before { content: attr(data-lrc); position: absolute; top: 15px; width: 100%; height: 60px; text-align: center; font: normal 32px/60px sans-serif; color: transparent; text-shadow: 2px 2px 2px rgba(0,0,0,.8); background: repeating-linear-gradient(to right, gold, lightgreen, snow, lightgreen, orange) 50%/200px 60px; -webkit-background-clip: text; }
  4. #player { left: 350px; top: 200px; width: 160px; height: 160px; filter: drop-shadow(0 0 50px white); cursor: pointer; transition: .5s; position: absolute; display: grid; place-items: center; animation: rot 8s linear infinite var(--state); }
  5. #player:hover { width: 50px; }
  6. c-c { position: absolute; width: 80%; height: 150px; border:3px solid snow;content: url('https://gd-hbimg.huaban.com/2136a30ff2d51f03bcb29932624f77616917218d47da-sHDdfg') ;  border-radius: 50%; opacity: .55; }
  7. @keyframes rot { to { transform: rotate(1turn); } }
  8. </style>

  9. <div id="tz" data-lrc="万籁音">
  10.     <audio id="aud" src="https://music.163.com/song/media/outer/url?id=35307327" autoplay loop></audio>
  11.     <div id="player"></div>
  12. </div>

  13. <script>
  14. var curkey = 0, lrcAr = [], total =3;
  15. Array.from({length: total}).forEach((c,k) => {
  16.     c = document.createElement('c-c');
  17.     c.style.cssText += `
  18.         transform: rotate(${360 / total * k}deg);
  19.         border-color: #${Math.random()};
  20.     `;
  21.     player.appendChild(c);
  22. });
  23. var getAr = (text) => {
  24.     var ar = text.trim().split('\n');
  25.     ar.sort();
  26.     var reg = /\[(\d+)[.:](\d+)[.:](\d+)\](.*)/;
  27.     ar.forEach(item => {
  28.         let result = item.match(reg);
  29.         let tmsg = parseInt(result[1]) * 60 + parseInt(result[2]) + parseInt(result[3]) / 1000;
  30.         lrcAr.push([tmsg, result[4].trim()]);
  31.     });
  32. };
  33. var mState = () => {
  34.     tz.style.setProperty('--state', ['running','paused'][+aud.paused]);
  35.     player.title = ['暂停','播放'][+aud.paused];
  36. };
  37. aud.onseeked = () => curkey = 0;
  38. aud.onplaying = aud.onpause = () => mState();
  39. aud.ontimeupdate = () => {
  40.     if(curkey > lrcAr.length - 1) return;
  41.     if(aud.currentTime >= lrcAr[curkey][0]) {
  42.         tz.dataset.lrc = lrcAr[curkey][1];
  43.         curkey ++;
  44.     }
  45. };
  46. player.onclick = () => aud.paused ? aud.play() : aud.pause();

  47. var lrc = `[00:00.00]万籁音`;
  48. getAr(lrc);
  49. </script>
复制代码
点评
回复

使用道具

一叶知秋 版主勋章 山高为峰 山外有山 樱果相依 24 46 47 48 闲花落
发表于 2024-6-19 23:15 | 显示全部楼层
司敏儿 发表于 2024-6-19 23:09
@凡哥  @花简静  

天哪,敏儿你真是太棒了。。
这个小播里面加了图片,
这个变形真是太酷了。
点评
回复

使用道具

四笑江梅引

九色鹿
 楼主| 发表于 2024-6-19 23:21 | 显示全部楼层
花简静 发表于 2024-6-19 23:15
天哪,敏儿你真是太棒了。。
这个小播里面加了图片,
这个变形真是太酷了。

觉得颜色多了

把这里  编辑了  border-color: #${Math.random()};
点评
回复

使用道具

一叶知秋 版主勋章 山高为峰 山外有山 樱果相依 24 46 47 48 闲花落
发表于 2024-6-19 23:30 | 显示全部楼层
司敏儿 发表于 2024-6-19 23:21
觉得颜色多了

把这里  编辑了  border-color: #${Math.random()};

好哒,这个单色的还是十分漂亮的。
点评
回复

使用道具

笑傲江湖
一叶知秋 版主勋章 山高为峰 山外有山 45 樱果相依 24 46 47 48 一坛酒
发表于 2024-6-20 01:01 | 显示全部楼层
司敏儿学的真快
我遇代码头晕。。。
点评
回复

使用道具

*破姐小跟班*
一叶知秋 版主勋章 音画同行 山高为峰 山外有山 24 46 47 48 彩凤凰
发表于 2024-6-20 09:37 | 显示全部楼层
播放器真好看,懂得看门道,不懂看热闹
点评
回复

使用道具

*破姐小跟班*
一叶知秋 版主勋章 音画同行 山高为峰 山外有山 24 46 47 48 彩凤凰
发表于 2024-6-20 09:37 | 显示全部楼层
欣赏敏儿带来的精彩制作,问好敏儿
点评
回复

使用道具

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|千山论坛

GMT+8, 2024-9-28 08:29

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表