《金手指双电子琴1~3》选听二(试用黑黑老师爱心动画做播放开关)
本帖最后由 亦是金 于 2023-3-20 16:26 编辑 <br /><br /><div class="t_fsz"><table cellspacing="0" cellpadding="0"><tr><td class="t_f" id="postmessage_1846164">
<div class="cont-area">
<div style="width: 1200px;height: 700px;box-shadow:0px 0px 1px 2px #045768, 0px 0px 0px 8px #99e5f5,0px 0px 5px 15px #045768;overflow:hidden;border-radius:1%;margin-top:30px;margin-LEFT: -310px;">
<style>
#papa {
width: 1200px;
height: 700px;
background: url('https://s4.ax1x.com/2022/02/12/HwHSHg.jpg') no-repeat 0 center/cover;
box-shadow: 3px 3px 0px #000;
transition: all 1.2s;
cursor: pointer;
position: relative;
z-index: 1;
}
#papa:hover {
background: url('https://s1.ax1x.com/2023/02/28/ppCqt5F.jpg') no-repeat center/cover;
}
#papa::before {
position: absolute;
content: '';
top: 500px;
left: 70px;
width: 150px;
height: 150px;
background: url('https://638183.freep.cn/638183/t23/1/heart_133236768103332344.png') 0 0 no-repeat;
background-size: 2900%;
animation: chgBg steps(28) 2s infinite both;
animation-play-state: var(--state);
}
@keyframes chgBg {
0% { background-position: 0%; }
100% { background-position: 100%; }
}
</style>
<div id="papa">
</div>
<script>
papa.addEventListener('click', () => aud.paused ? aud.play() : aud.pause());
</script>
<style type="text/css">
@keyframes mv { from { background-position: 1200px 0; } to { background-position: 0 0; } }
body { overflow-x: hidden; }
#baiBox {
margin: auto;
width: 800px;
text-align: center;
font-family:微软简中圆;
font-size: 2.5rem;
font-weight: bold;
color: #f46ff6;
transform-origin: top;
animation: yao 1.0s linear infinite alternate;
}
@keyframes yao {
from{transform: perspective(800px) rotatex(30deg); }
to { transform: perspective(800px) rotatex(-30deg); }
}
.tit { position: relative;width: 300px;height: 30px;top:-690px;LEFT: -390px;z-index: 100;filter: drop-shadow(-1px 1px 1px #ffffff)drop-shadow(0px -1px 1px #ffffff)drop-shadow(0px 0px 1px #ffffff)drop-shadow(0px 0px 1px #ffffff)drop-shadow(0px 0px 1px #ffffff) }
#tit:hover { color: green; }
</style>
<div id="hu" >
<div id="baiBox"
<div class="tit">
<span style="color:#fb52f9;"><span style="font-size:26px;">《金手指双电子琴1~3》选听二</span>
<span style="color:#3d46f7;"><span style="font-size:14px;"> </span></div>
<div style="position: relative;width: 500px;height: 50px;top:-85px;LEFT: 972px;z-index: 100;filter: drop-shadow(-1px 1px 1px #e8f552)drop-shadow(0px -1px 1px #e8f552)drop-shadow(0px 0px 1px #e8f552)drop-shadow(0px 0px 1px #e8f552)drop-shadow(0px 0px 1px #e8f552)">
<p><span style="color:#ff0000;"><span style="font-family:华文隶书;"><span style="font-size:26px;">亦是金在线音乐</span></span></span></p></div>
</style>
<div style="position: relative; top:-740px;LEFT: 60px;z-index: 12435;">
<style type="text/css">
.lyricDisp{-webkit-text-stroke:1.5px #ffffff;font: bold 2.0em悟空大字库, sans-serif; transition:.3s all ease;font-size:1.8em;}
.lyricDisp:nth-child(1){color:#000080;text-align:left;--aniName:bgMove1;--durTime:100ms;--aniPlayState:running;}
.lyricDisp:nth-child(1)::before{position:absolute;content:attr(data-lrc);width:0;height:100%;left:0;top:0;color: transparent;background: linear-gradient(45deg, #F32121 32%,#8EE73C 43%,#FEFFFF 52%,#091CFD 62%,#36F4B1 75%);-webkit-background-clip: text;-webkit-text-stroke:2px #000000;filter: contrast(110%)brightness(160%);overflow:hidden;white-space:nowrap;animation:var(--aniName) var(--durTime) linear forwards;animation-play-state:var(--aniPlayState);}
.lyricDisp:nth-child(2){color:blue;text-align:center;font-size:1.8em;}@keyframes bgMove1{from{width:0;}to{width:100%;}}@keyframes bgMove0{from{width:0;}to{width:100%;}}
#LRCShow{position:absolute;left:380px;bottom:480px;width:75%;height:120px;margin:6px auto position:relative;}
#rdisk{position:absolute;left:40px;bottom:30px;border-radius: 50%;font-size:4em;color:red;animation:circleSmall2 10s linear infinite;animation-play-state:paused;cursor:pointer;}
@keyframes circleSmall2{0%{transform:rotateX(0deg) rotateY(20deg) rotateZ(360deg);}100%{transform:rotateX(0deg) rotateY(20deg) rotate(0deg);}}
#ground3rd{
width:1000px;height:600px;
position:absolute;font-size:16px;
overflow:hidden;border-radius:0px;
margin:5px 0px 30px -5px;
background:url(https://s4.ax1x.com/2022/03/05/bwbPNq.jpg);
background-position:center;
background-size: cover;
perspective: 1200px;
}
#mpic {
position: absolute;
transform: rotateY(0deg);
top: 0px;
left: 0px;
width: 1000px;
height: 600px;
animation: rote 80s linear infinite;
cursor: pointer;
opacity: 1;
}
@keyframes rote {
from {
background-position: 0 0;
filter: hue-rotate(360deg)
}
to {
background-position: -1730px 300px;
}
}
#mpic1 {
position: absolute;
transform: rotateY(0deg);
top: 0px;
left: 0px;
width: 1000px;
height: 600px;
animation: rotet 100s linear infinite;
cursor: pointer;
opacity: 1;
}
@keyframes rotet {
from {
background-position: 0 0;
filter: hue-rotate(360deg)
}
to {
background-position: 0px -1730px;
}
}
#songList li {
cursor: pointer;
color: #ffffff;
font:thick微软雅黑;
font-size:17px;
line-height:27px
}
</style>
<div id="ground3rd">
<div class="itemm">
<div style="width: 1000px;height: 600px;box-shadow:0px 0px 1px 2px #045768, 0px 0px 0px 8px #99e5f5,0px 0px 5px 15px #045768;overflow:hidden;border-radius:1%;margin-top:0px;margin-LEFT: 0px;">
<div style="position:relative;width: 1000px;height: 600px;overflow:hidden;top: 0px;left: 0px;">
<div style="left: 0px;position:absolute;top: 0px;">
</div>
<ol id='songList' style="color:red;position:absolute;top:20px;left:0px;"></ol>
<div id="rdisk"style="width:100px;height:100px;border: 0px solid #000000;
background: url('')0 0/100% 100%,);
mask: radial-gradient(transparent 7px,#red 0);transform: rotateX(45deg) rotateY(20deg) rotate(0deg);"></div>
<div id="LRCShow"></div>
</div>
<!-- 下面一句是存放歌词的标签 -->
<textarea style="visibility:hidden;" id='lrcContent0'></textarea>
<script type="text/javascript">
var lrcPlayer2=function(){return this.init.apply(this,arguments)};lrcPlayer2.prototype={constructor:lrcPlayer2,init:function(opts){this.lyricTxtObj=document.getElementById(opts.lrcTxtID);lyricTxt=this.lyricTxtObj.innerHTML;this.showLrcObj=document.getElementById(opts.lrcShowID);this.gclines=new Array();for(k=0;k<2;k++){this.gclines=document.createElement('div');this.gclines.className='lyricDisp';this.showLrcObj.appendChild(this.gclines)}this.audioCtrl=document.getElementById(opts.audioCtrl);this.handleLrc(lyricTxt);this.genPlayer(opts.audioURL)},handleLrc:function(lyricTxt){this.lrcVec=new Array();var lyriclist=lyricTxt.split(/\r|\n|\r\n/);for(n=0;n<lyriclist.length;n++){chkTime=lyriclist.match(/\[\d{1,2}:\d{2}.\d{1,3}\]|\[\d{1,2}:\d{2}\]/g);if(chkTime){tIdx=lyriclist.lastIndexOf(']');if(tIdx>0)lrcTxt=lyriclist.substr(tIdx+1);for(m=0;m<chkTime.length;m++){ta=chkTime.substr(1).replace(']','').split(/:/);_t=(+ta)*60+(+ta);if(this.lrcVec.length==0&&_t!=0){this.lrcVec.push()}this.lrcVec.push()}}}this.lrcVec.sort(function(a,b){return(a-b)})},showLrc:function(durTime){this.gclines.innerHTML=this.gclines.dataset.lrc=this.lrcVec.length>0?this.lrcVec:"\u3000";this.gclines.style.setProperty('--aniName','bgMove'+(this.idx%2));this.gclines.style.setProperty('--durTime',durTime+'ms');this.gclines.style.setProperty('--aniPlayState','running')},genPlayer:function(mUrl){this.mObj=document.createElement("audio");this.mObj.loop=false;this.mObj.muted=false;this.mObj.src=mUrl;this.showLrcObj.appendChild(this.mObj);this.idx=0;var that=this;this.mObj.addEventListener('ended',function(){that.idx=0});this.mObj.addEventListener('playing',function(){that.audioCtrl.style.animationPlayState='running';that.gclines.style.setProperty('--aniPlayState','running')});this.mObj.addEventListener('pause',function(){that.audioCtrl.style.animationPlayState='paused';that.gclines.style.setProperty('--aniPlayState','paused')});this.mObj.addEventListener('error',function(){console.log("audio wrong, remove play start event");that.showLrcObj.style.display='none';that.showLrcObj.removeChild(this)});this.mObj.addEventListener('timeupdate',function(){if(this.currentTime>that.lrcVec){if(that.idx<(that.lrcVec.length-1)){that.showLrc((that.lrcVec-that.lrcVec)*950)}else{that.showLrc((this.duration-that.lrcVec)*950)}if(that.idx+1==that.lrcVec.length){that.gclines.innerHTML=""}else{that.gclines.innerHTML=that.lrcVec}that.idx++}});this.audioCtrl.onclick=function(){if(that.mObj.paused){that.mObj.play()}else{that.mObj.pause()}};try{this.mObj.play()}catch(err){console.log(err.message)}},stopMusic:function(){this.mObj.pause();this.mObj.controls=false;},setAudioUrl:function(mUrl){this.mObj.src=mUrl},isMusicEnd:function(){return this.mObj.ended},reStart:function(){this.idx=0;this.mObj.play()}}
</script>
<script type="text/javascript">
(function() {
songParas = [
["《爱拼才会赢》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775952.mp3",`正播放:《爱拼才会赢》 - 新时代乐队`],
["《至少还有你》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775945.mp3",`正播放:《至少还有你》 - 新时代乐队`],
["《爱的初体验》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775946.mp3",`正播放:《爱的初体验》 - 新时代乐队`],
["《盛夏的果实》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775947.mp3",`正播放:《盛夏的果实》 - 新时代乐队`],
["《你的眼神》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775948.mp3",`正播放:《你的眼神》 - 新时代乐队`],
["《 夜 来 香 》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020776867.mp3",`正播放:《 夜 来 香 》 - 新时代乐队`],
["《 流 浪 歌 》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020776869.mp3",`正播放:《 流 浪 歌 》 - 新时代乐队`],
["《 花 心 》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020776870.mp3",`正播放:《 花 心 》 - 新时代乐队`],
["《 征 服 》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020776871.mp3",`正播放:《 征 服 》 - 新时代乐队`],
["《 天 亮 了 》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775949.mp3",`正播放:《 天 亮 了 》 - 新时代乐队`],
["《 长 相 依 》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775950.mp3",`正播放:《 长 相 依 》 - 新时代乐队`],
["《站在高岗上》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775951.mp3",`正播放:《站在高岗上》 - 新时代乐队`],
["《爱一个人好难》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020776874.mp3",`正播放:《爱一个人好难》 - 新时代乐队`],
["《风中有朵雨做的云》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020776875.mp3",`正播放:《风中有朵雨做的云》 - 新时代乐队`],
["《爱你在心口难开》 - 新时代乐队","","https://music.163.com/song/media/outer/url?id=2020775953.mp3",`正播放:《爱你在心口难开》 - 新时代乐队`],
];
var opts = {
lrcTxtID:'lrcContent0',
lrcShowID:"LRCShow",
audioURL:"https://www.qqmc.com/up/kwlink.php?id=60010502&.mp3",
audioCtrl:'rdisk'
};
var km = null;
var idx = 0;
let songList = document.getElementById('songList');
for(n = 0; n < songParas.length; n++) {
let item = document.createElement('li');
item.id = 's'+n;
item.innerHTML = songParas;
songList.appendChild(item);
}
items = songList.getElementsByTagName('li');
for(n = 0 ; n < items.length; n++) {
items.onclick=function() {
idx = parseInt(this.id.substr(1));
document.getElementById('ground3rd').style.backgroundImage = `url(${songParas})`;
if(km){
km.stopMusic();
//km = null;
km.handleLrc(songParas);
km.setAudioUrl(songParas);
km.reStart();
}
else {
document.getElementById(opts.lrcTxtID).innerHTML = songParas;
opts.audioURL=songParas;
km = new lrcPlayer2(opts);
}
}
}
items.click();
setInterval(() => {
if(km) {
items = songList.getElementsByTagName('li');
if(km.isMusicEnd()) {
idx++; idx %= items.length;
items.click();
}
}
//setTimeout(isSongEnded, 500);
}, 500);
})();
</script>
</TD></TR></TBODY></TABLE>
<DIV style="HEIGHT: 100px"> 亦是金老师把黑黑的这个心形小图做成播放器按钮了,真漂亮{:4_187:} 红影 发表于 2023-3-20 16:28
亦是金老师把黑黑的这个心形小图做成播放器按钮了,真漂亮
问好红影!祝你欣赏愉快!{:4_187:} @黑黑老师谢谢你的漂亮爱心动画!我来尝个鲜!{:4_191:} 好听!好看!好制作! 谢谢亦是金朋友分享!
{:4_204:}{:4_199:} 速度的,怎么快小心按钮做好了,好棒了{:4_199:} 大猫咪 发表于 2023-3-20 19:47
好听!好看!好制作! 谢谢亦是金朋友分享!
问好大猫咪!祝你欣赏愉快!{:4_187:} 小辣椒 发表于 2023-3-20 19:51
速度的,怎么快小心按钮做好了,好棒了
问好小辣椒!谢谢欣赏!{:4_187:} 本帖最后由 亦是金 于 2023-3-20 19:59 编辑
小辣椒 发表于 2023-3-20 19:51
速度的,怎么快小心按钮做好了,好棒了
快马加鞭!赶制一个尝尝鲜!{:4_189:}谢谢加精!{:4_187:} 亦是金 发表于 2023-3-20 19:55
快马加鞭!赶制一个尝尝鲜!谢谢加精!
啊~~不客气,每天看见你有新的作品出来,非常棒! 喜欢电子琴 马黑黑 发表于 2023-3-20 20:42
喜欢电子琴
问好黑黑老师!谢谢你的代码,谢谢欣赏!{:4_191:} 亦是金 发表于 2023-3-20 16:37
问好红影!祝你欣赏愉快!
这么多好曲子,听了好一会。感谢亦是金老师带来的好帖{:4_187:}
页:
[1]