亦是金 发表于 2024-3-18 21:42

《 花 房 姑 娘 》-- 赵鹏/惊堂木乐队

<style>
#papa {
        margin: 150px-180px;
        place-items: center;
      width: 1200px;
      height: 700px;
        border: 6px solid rgba(36, 201, 219,.95);
      border-radius: 20px;
        background: #000000 url('')no-repeat center/cover;
        display: grid;
      box-shadow: 0 0px 4px 0px hsla(0,0%,0%,.65);
      user-select: none;
      position: relative;
      z-index: 1;   
        overflow:hidden;
}

#bjtp{
        position: absolute;
        top: 87%;
        left: 76%;
        width: 23%;
        height: 15%;
        z-index:3;

}      

#tp1{
        place-items: center;
      width: 100%;
      height: 100%;
        left: 0%;
        top:0%;
      user-select: none;
      position: absolute;
      z-index: 1;
mix-blend-mode:lighten;
}

#tp2{
        width: 350px;
        display: grid;
      height: 250px;
        left: 75%;
        top:40%;
        position:absolute;
        transform: rotateY(180deg);
      z-index: 5;
      opacity: 1;
mix-blend-mode:lighten;
}

#tp3{
        width: 0%;   
      height: 60%;
        left: 0%;
        top:-10%;
        position:absolute;
        opacity: 1;
      z-index: 3;
}/*竹枝小鸟*/

#tp4{
        width: 65%;   
      height: 40%;
        left: 0%;
        top:50%;
        position:absolute;
        opacity: 1;
      z-index: 3;
mix-blend-mode:lighten;
}

#ptpt{
        width: 100%;
        height: 100%;
        display: grid;
        left: 0%;
        top:0%;
        background: radial-gradient(ellipse 100% 100% at 50% 50%, rgba(242, 9, 9, 0) 28%,rgba(255, 2, 2, 0.62) 65%);
        position:absolute;
      z-index: 4;
      opacity: 1;
        animation: ptpt 3s infinite linear;
}
@keyframes ptpt{
        0%{filter:hue-rotate(360deg);}
        100%{filter:hue-rotate(0deg)}
}


li-zi {
        z-index: 4;
        top:1600px;
        left: 0px;
        position:absolute;
        background: url('https://www.emojiall.com/images/60/huawei/1f338.png')0 0/cover;
        offset-path: path('M10 400 C600 -355, 494 196, 1200 220');
        offset-distance: 0;
        animation: move 15s linear infinite var(--state), rotating 5s infinite var(--state);
}/*白云*/ /*offset-path: path('M0 250 Q100 0 1140 20');*/
@keyframes move { to { offset-distance: 100%; filter:hue-rotate(10deg)contrast(100%)brightness(200%);}
}



#mplayer {
        position: absolute;
        grid-template-columns: auto auto auto;
        gap: 28px;
        display: grid;
        place-items: center;
        color: var(--color);
        font: normal 12px sans-serif;
        z-index:999;
        --ww: 900px;
        --color: #ffffff;
        --btn_size: 40px;
        --track: #ffffff;
        --prog: #ff0000;
}

#btnplay {
        --state: paused;
        margin-right: 0px;
        font: bold var(--btn_size) / var(--btn_size) serif;
        width: 90px;
        height: 90px;
        cursor: pointer;
        animation: rot 4s infinite linear;
        animation-play-state: var(--state);
        background: url(https://ysj147.s3-us-east-1.ossfiles.com/zzsc/png/image.png)no-repeat center/cover;
}
@keyframes rot { to { transform: rotate(-1turn); } }

#prog {
        --xx: 0px;
        width: var(--ww);
        height: 2px;
        border-radius: 8px;
        background: var(--track);
        position: relative;
        cursor: pointer;
}
#prog::before {
        position: absolute;
        content: '';
        width: var(--xx);
        height: 100%;
        border-radius: 8px;
        background: var(--prog);
}

@keyframes cover1{
        0%{opacity: 1;width: 0%;transform: scale(0.4);filter: hue-rotate(0deg)brightness(100%)}
        20%{width: 100%;opacity: 1;transform: scale(1.1);filter: hue-rotate(360deg)brightness(100%)}
        100%{width: 100%;opacity: 1;transform:scale(1.1);transform: translate(0%, 0px);}}
@keyframes cover2 {
        0%{width: 0%;opacity: 1;transform: scale(0.4);filter: hue-rotate(0deg)brightness(100%)}                                20%{width: 100%;opacity: 1;transform: scale(1.1);filter: hue-rotate(360deg)brightness(100%)}
        100%{width: 100%;opacity: 1;transform:scale(1.1);transform: translate(0%, 0%);}}

#lrc {
        --motion: cover2;
        --tt: 2s;
        --state: paused;
        --bg: linear-gradient(180deg, hsla(240, 50%, 50%, .25), hsla(240, 30%, 50%, .75));
        position: absolute;
        left: 0%;
        top:0%;
        filter:drop-shadow(#FFFFFF 1px 0 0)drop-shadow(#FFFFFF 0 1px 0)drop-shadow(#FFFFFF -1px 0 0) drop-shadow(#FFFFFF 0 -1px0);
        font:normal 3.4em 华文新魏;
        color:#0000;
        z-index:100;
        -webkit-background-clip: text;
        white-space: pre;
        transform: translate(-30%, 10px);
        transition-timing-function: cubic-bezier(0.125, 0.830, 0.905, 0.225);
}
#lrc::before {
        position: absolute;
        content: attr(data-lrc);
        color: transparent;
        width: 100%;
        height: 100%;
        white-space: pre;
        background:#880000;
        -webkit-background-clip: text;
        animation: var(--motion) var(--tt) linear forwards;
        animation-play-state: var(--state);
}
</style>

<div id="papa">

<div id="bjtp"><img id="Img" src="https://ysj147.s3-us-east-1.ossfiles.com/zzsc/png/ysjzxyy.png" width="100%" height="100%"></div>
<div id="ptpt"></div>
<div id="tp1">
<img id="pp1"src="https://z4a.net/images/2024/03/18/huafangguniang2-tuya.gif" width="100%" height="100%"></div>

<div id="tp2">
<img id="pp2"src="https://pic.imgdb.cn/item/64f84335661c6c8e54f84cc0.gif" width="100%" height="100%"></div>

<div id="tp3">
<img id="pp3"src="https://pic2.imgdb.cn/item/643dbb490d2dde5777df1d3c.gif" width="100%" height="100%"></div>

<div id="tp4">
<img id="pp4"src="https://ysj147.s3-us-east-1.ossfiles.com/zzsc/zyfx/zyfx33.gif" width="100%" height="100%"></div>

<div id="lrc" data-lrc="HCPlayer">HCPlayer</div>

<div id="mplayer">
<span id="btnplay"></span>
<span id="prog"></span>
<span id="tmsg">00:00 | 00:00</span>
</div>

</div>
<audio id="aud" src="https://mp3.t57.cn:7087/kwlink_d.php?id=855465" loop autoplay></audio>

<script >
(function() {
      (function(mkPlayer) {let defaults = {lrcAr: [],lrc_css: 'top: 0px; left: 0%; transform: translateX(-50%);',player_css: 'bottom: 0px; ; transform: translateX(-50%);',btn_txt: '✳',playerCode: ``,};let playCode = (user_config) => {let data = Object.assign({}, defaults, user_config);papa.innerHTML += data.playerCode;mplayer.style.cssText += data.player_css;lrc.style.cssText += data.lrc_css;btnplay.innerHTML = data.btn_txt;let mKey = 0, mFlag = true;btnplay.onclick = () => aud.paused ? aud.play() : aud.pause();prog.onclick = (e) => aud.currentTime = aud.duration * e.offsetX / prog.offsetWidth;aud.addEventListener('timeupdate', () => {let prg = aud.currentTime * prog.offsetWidth / aud.duration < 6 ? 6 : aud.currentTime * prog.offsetWidth / aud.duration;tmsg.innerText = `${toMin(aud.currentTime)} | ${toMin(aud.duration)}`;prog.style.setProperty('--xx', prg + 'px');for (j = 0; j < data.lrcAr.length; j++) {if (aud.currentTime >= data.lrcAr) {cKey = j;if (mKey === j) showLrc(data.lrcAr);else continue;}}});aud.addEventListener('pause', () => mState());aud.addEventListener('play', () => mState());aud.addEventListener('seeked', () => calcKey());let mState = () => aud.paused ? (lrc.style.setProperty('--state','paused'),btnplay.style.setProperty('--state', 'paused')) : (lrc.style.setProperty('--state','running'),btnplay.style.setProperty('--state', 'running'));let showLrc = (time) => {let name = mFlag ? 'cover1' : 'cover2';lrc.innerHTML = data.lrcAr;lrc.dataset.lrc = data.lrcAr.replace(/<br>/, '\n');lrc.style.setProperty('--motion', name);lrc.style.setProperty('--tt', time + 's');lrc.style.setProperty('--state', 'running');mKey += 1;mFlag = !mFlag;};let calcKey = () => {for (j = 0; j < data.lrcAr.length; j++) {if (aud.currentTime <= data.lrcAr) {mKey = j - 1;break;}}if (mKey < 0) mKey = 0;if (mKey > data.lrcAr.length - 1) mKey = data.lrcAr.length - 1;let time = data.lrcAr - (aud.currentTime - data.lrcAr);showLrc(time);};let toMin = (val) => {if (!val) return '00:00';val = Math.floor(val);let min = parseInt(val / 60), sec = parseFloat(val % 60);if (min < 10) min = '0' + min;if (sec < 10) sec = '0' + sec;return min + ':' + sec;}};mkPlayer.HCPlayer = playCode;})(this);
      (function(mkFS) {let setFullScreen = (user_set) => {let pa = user_set.pa;if(typeof(pa) !== 'object') return false;if(!user_set.set) user_set.set = 'color: snow;background: black; border: 0px solid snow; left: 40px; bottom: 10px;';btnMsg = document.createElement('span');btnMsg.style.cssText = `position: absolute; border-radius: 6px; padding: 4px; cursor: pointer; z-index:998; ${user_set.set}`;btnMsg.innerText = '全屏观赏';btnMsg.style.display = 'none';pa.appendChild(btnMsg);let timerId, fs = false;btnMsg.onclick = () => fs ? document.exitFullscreen() : pa.requestFullscreen();pa.addEventListener('mousemove', (e) => {clearTimeout(timerId);btnMsg.style.display = 'block';timerId = setTimeout('btnMsg.style.display = "none"', 3600);});document.addEventListener('fullscreenchange', () => {if (document.fullscreenElement !== null) {fs = true;btnMsg.innerText = '退出全屏';} else {fs = false;btnMsg.innerText = '全屏观赏';}});};mkFS.FS = setFullScreen;})(this);
      
let averAdd = 0, offset = 0;
let geci = `《 花 房 姑 娘 》
词曲:崔 健
演唱:赵鹏/惊堂木乐队
歌词编辑:亦是金
- - - - - -
我独自走过你身旁
并没有话要对你讲
我不敢抬头看着你
噢脸庞
你问我要去向何方
我指着大海的方向
你的惊奇像是给我
噢 赞扬
你问我要去向何方
我指着大海的方向
你问我要去向何方
我指着大海的方向
你带我走进你的花房
我无法逃脱花的迷香
我不知不觉忘记了
噢 方向
你说我世上最坚强
我说你世上最善良
我不知不觉已和花儿
噢 一样
你说我世上最坚强
我说你世上最善良
你说我世上最坚强
我说你世上最善良
- - - - - -
你带我走进你的花房
我无法逃脱花的迷香
我不知不觉忘记了
噢 方向
你说我世上最坚强
我说你世上最善良
我不知不觉已和花儿
噢 一样
你要我留在这地方
你要我和它们一样
我看着你默默地说
噢 不能这样
我想要回到老地方
我想要走在老路上
这时我才知离不开你的
噢 姑娘
我就要回到老地方
我就要走在老路上
我明知我已离不开你
噢 姑娘
- - 谢谢欣赏 - -
`;
let lrcTime = (ar) => {let tmpAr = [];for(j = 0; j <ar.length - 1; j ++) {if(j !== ar.length - 1) tmpAr = parseFloat((ar - ar).toFixed(1));}let aver = parseInt(tmpAr.reduce((a,b) => a + b) / (tmpAr.length - 1)) + averAdd;tmpAr.push(aver);tmpAr.forEach((item,key) => {ar = item > aver ? aver : item;});return ar;};
      let getLrcAr = (text) => {let lrcAr = [];let calcRule = ;for(x of text.split('\n')) {let ar = [];let re = /\d+[\.:]\d+([\.:]\d+)?/g;let geci = x.replace(re,'');if(geci) {geci = geci.replace(/[\[\]\'\"\t,]s?/g,'');let time = x.match(re);if(time != null) {for(y of time) {let tmp = y.match(/\d+/g);let sec = 0;for(z in tmp) sec += tmp * calcRule;ar = ;lrcAr.push(ar); }}}}lrcAr.sort((a,b)=> a - b);return(lrcTime(lrcAr));}

      HCPlayer({
                lrcAr: getLrcAr(geci),
                lrc_css: ' --bg: linear-gradient(hsla(90,80%,50%,.35),hsla(100,70%,45%,.6));top:75%; left: 40%',
                player_css: '--ww: 500px;top:85%;left: 20%;',
                btn_txt: '',
      });

      FS({
                pa: papa,
               
set: 'backgroun: #333; color: snow; border: 0px solid snow; bottom: 90%; left: -220px;font:normal 2.1em 华文隶书;',
      });
aud.onerror = () => {
                if(aud.error.code === 4) aud.src='https://www.qqmc.com/mp3/music274712607.mp3';
      }
})();

ptpt.style.animationPlayState = aud.paused ? 'paused' : 'running';
aud.addEventListener('playing', () =>ptpt.style.animationPlayState = 'running');
aud.addEventListener('pause', () =>ptpt.style.animationPlayState = 'paused');

</script>

<script>
if ('getContext' in document.createElement('canvas')) {
    HTMLImageElement.prototype.play = function() {
      if (this.storeCanvas) {
            // 移除存储的canvas
            this.storeCanvas.parentElement.removeChild(this.storeCanvas);
            this.storeCanvas = null;
            // 透明度还原
             image1.style.opacity = '';image2.style.opacity = '';image3.style.opacity = '';image4.style.opacity = '';
      }
      if (this.storeUrl) {
            this.src = this.storeUrl;   
      }
    };
    HTMLImageElement.prototype.stop = function() {
      var canvas = document.createElement('canvas');
      // 尺寸
      var width = this.width, height = this.height;
      if (width && height) {
            // 存储之前的地址
            if (!this.storeUrl) {
                this.storeUrl = this.src;
            }
            // canvas大小
            canvas.width = width;
            canvas.height = height;
            // 绘制图片帧(第一帧)
            canvas.getContext('2d').drawImage(this, 0, 0, width, height);
            // 重置当前图片
            try {
                this.src = canvas.toDataURL("image/gif");
            } catch(e) {
                // 跨域
                this.removeAttribute('src');
                // 载入canvas元素
                canvas.style.position = 'absolute';
                // 前面插入图片
                this.parentElement.insertBefore(canvas, this);
                // 隐藏原图
                this.style.opacity = '0';
                // 存储canvas
                this.storeCanvas = canvas;
            }
      }
    };
}

var image = document.getElementById("testImg"),
image1 = document.getElementById("pp1"),
image2 = document.getElementById("pp2"),
image3= document.getElementById("pp3"),
image4= document.getElementById("pp4"),
button = document.getElementById("mplayer");

button.onclick = function() {
      if (this.value == '') {
             image1.play(); image2.play(); image3.play(); image4.play();
            this.value = '.';
      } else {
             image1.stop(); image2.stop(); image3.stop(); image4.stop();
            this.value = '';
      }
    };



</script>



<script>

var pa= document.querySelector('body');
var mState = () => aud.paused ?
        (pa.style.setProperty('--state', 'paused')) :
        (pa.style.setProperty('--state', 'running'));

aud.addEventListener('pause', () => mState());
aud.addEventListener('playing', () => mState());

Array.from({length: all=10}).forEach(star => {
      var size = 30 + Math.floor(Math.random() * 20);
      star = document.createElement('li-zi');
      star.style.cssText += `
            left: 0;
            top: ${Math.random() * 40 + 60}px;
            width: ${size}px;
            height: ${size}px;
            opacity: ${Math.random() * 0.4 + 0.4 };
            animation-delay: -${Math.random() * 10}s, -${Math.random() * 5}s;
      `;
      papa.prepend(star);
    });

</script>



liumang 发表于 2024-3-19 00:04

亦是金老师发帖有益处码,给你去了,你进去看看

liumang 发表于 2024-3-19 00:07

问好亦是金老师,有的图片没有看见

liumang 发表于 2024-3-19 00:08

https://z4a.net/images/2024/03/18/huafangguniang2-tuya.gif

liumang 发表于 2024-3-19 00:09

亦是金老师制作辛苦了,明天再进来看看

liumang 发表于 2024-3-19 00:10

终于出来了,漂亮的制作{:5_150:}
页: [1]
查看完整版本: 《 花 房 姑 娘 》-- 赵鹏/惊堂木乐队