|
|

楼主 |
发表于 2022-2-24 20:34
|
显示全部楼层
- <style type="text/css">
-
- .mnBox { position: relative; margin: 0 auto; padding: 35px; width: 660px; border: none; border-top: 6px solid #000; border-radius: 10px; background: #b3c3c3; }
- .ctBox { margin: 0; padding: 30px; background: #fff; min-height: 300px; border-radius: 10px; }
- .ctBox p,img, h2,button { text-align:center; }
- #lrcDiv { margin: auto; width: 300px; height: 43px; overflow: hidden; position: relative; padding: 8px; text-align:center; }
- #lrcDiv ul, lrcli { margin: 0; padding: 0; }
- #lrcUl { position: absolute; left:10px;top: 0; }
- #lrcUl li { height: 20px; font-size:14px; line-height:20px;left:50px; color: black; list-style-type: none; }
- #myplayer { outline: none; list-style-type: none; }
-
- </style>
-
- <div class="mnBox">
- <div class="ctBox">
- <p style="text-align:center;"><img alt="550" height="362" src="https://pic.imgdb.cn/item/6216210d2ab3f51d91f0f16b.jpg" /><br></p>
- <h2 style="padding-bottom: 10px;">痛彻心扉</h2>
- <h2 style="text-align:center;">歌手--小希 (馨予)</h2>
- <pre>
-
- 看见黑黑今天分享的
- 歌词同步高亮制作
- 在这个css边框中测试一下
- 感觉这个歌词同步高亮效果
- 加上这个边框特别漂亮
- 这样分享音乐也是不错
- 感谢黑黑又一个精彩分享
- 黑黑你太厉害了 精彩不断!
-
- 感谢黑黑老师的精彩分享
- 自动播放歌词同步高亮制作
-
-
- </pre>
- <p style="margin: auto; width:120px; text-align:center; font-size:14px; color:#000;"><marquee scrollamount="2" direction="left" >谢谢黑黑老师的精彩分享</marquee></p>
-
- <p style="text-align:center;"><audio id="myplayer" src="https://oss.shandianpan.com/deba64b09196f48dcde864caf63ceee9.mp3" controls="controls" autoplay="autoplay"></audio></p>
- <div id="lrcDiv"><ul id="lrcUl"></ul></div>
- <p style="margin: 20px; text-align:center;">小辣椒 2022 02 23</p>
- </div>
- </div>
-
- <script language="javascript">
-
- var lrcAr = [
- ["00:00.11",""],
- ["00:03.11"," 痛彻心扉"],
- ["00:10.48"," 歌手:小希 (馨予)"],
- ["00:16.76"," LRC编辑:小辣椒"],
- ["00:21.64"," 怎么能够让我不再想你"],
- ["00:27.07"," 也许爱你爱到最后只能伤心"],
- ["00:33.60"," 已经有了离开你的勇气"],
- ["00:39.83"," 在我的梦里你不是唯一"],
- ["00:46.26"," 我想要再回到你温暖的怀里"],
- ["00:53.24"," 感觉你的心跳你的呼吸"],
- ["00:59.68"," 想到天长地久对于我们"],
- ["01:04.36"," 渴望而不可及"],
- ["01:06.75"," 难道命运注定就此分离"],
- ["01:13.83"," 啊。。。"],
- ["01:16.91"," 爱你痛彻我心扉"],
- ["01:22.56"," 给了你仅有的一片天"],
- ["01:29.03"," 回忆的碎片撞翻我心中思念的火蕊"],
- ["01:35.95"," 燃烧我整座的堡垒"],
- ["01:42.15"," 啊。。。"],
- ["01:44.73"," 爱你痛彻我心扉"],
- ["01:49.31"," 少了你还残留一片天"],
- ["01:55.45"," 我想我只会紧握住手中凋零的玫瑰"],
- ["02:02.83"," 品尝你赐给的泪水"],
- ["02:08.91"," 或许你曾为我流泪"],
- ["02:15.44"," 如今你让我痛彻心扉"],
- ["02:24.03"," LRC编辑:小辣椒"],
- ["02:48.19"," 我想要再回到你温暖的怀里"],
- ["02:55.01"," 感觉你的心跳你的呼吸"],
- ["03:01.24"," 想到天长地久对于我们"],
- ["03:05.87"," 渴望而不可及"],
- ["03:08.22"," 难道命运注定就此分离"],
- ["03:15.46"," 啊。。。"],
- ["03:18.50"," 爱你痛彻我心扉"],
- ["03:24.18"," 给了你仅有的一片天"],
- ["03:30.36"," 回忆的碎片撞翻我心中思念的火蕊"],
- ["03:37.54"," 燃烧我整座的堡垒"],
- ["03:43.55"," 啊。。。"],
- ["03:46.38"," 爱你痛彻我心扉"],
- ["03:51.02"," 少了你还残留一片天"],
- ["03:57.20"," 我想我只会紧握住手中凋零的玫瑰"],
- ["04:04.53"," 品尝你赐给的泪水"],
- ["04:10.56"," 或许你曾为我流泪"],
- ["04:17.09"," 如今你让我痛彻心扉"],
- ["04:27.51"," 谢谢欣赏"]
- ];
- var myaud = document.getElementById('myplayer'); //播放器标识
- var lrcUl = document.getElementById('lrcUl'); //歌词显示元素标识
- //处理lrc歌词数组:时间转换成秒、歌词放入li标签
- for(j=0; j<lrcAr.length; j++){
- lrcAr[j][0] = toSec(lrcAr[j][0]);
- lrcUl.innerHTML += "<li id='li" + lrcAr[j][0] + "'>" + lrcAr[j][1] + "</li>";
- }
- //lrc时间信息转为秒
- function toSec(lrcTime) {
- let tmpAr = lrcTime.split(':');
- lrcTime = tmpAr[0] * 60 + parseInt(tmpAr[1]);
- return lrcTime;
- }
- //同步高亮、翻滚歌词
- myaud.ontimeupdate = function() {
- let tt = this.currentTime;
- for(j=0; j<lrcAr.length; j++){
- if(tt > lrcAr[j][0]){
- if(j > 0){
- let idxLast = lrcAr[j-1][0];
- document.getElementById("li" + idxLast).style.color = "black";
- lrcUl.style.top ="-" + (j * 20 - 20) + "px";
- }
- let idx = lrcAr[j][0];
- document.getElementById("li" + idx).style.color = "red";
- }
- }
- }
- // 播放结束重置歌词样式
- myaud.onended = function() {
- document.getElementById("li" + lrcAr[lrcAr.length-1][0]).style.color = "black";
- lrcUl.style.top = 0;
- this.play();
- }
-
- </script>
复制代码
|
|