|
<style>
@import 'https://638183.freep.cn/638183/web/css/tz01.css';
#pa { --offsetX: 81px; --bg: url('https://img.pconline.com.cn/images/upload/upc/tx/photoblog/1812/22/c0/124764745_1545409752202.jpg') no-repeat center/cover; --ma-size: 20%; }
#ma { left: 13.5%; top: 30px; }
#heart { position: absolute; left: 0; bottom: 0; cursor: pointer; --dx: 0; --dy: 0; --scale: 1; }
#heart path { transform: translate(var(--dx), var(--dy)) scale(var(--scale)); }
#btnFs { right: 30px; top: 30px; color: beige; border-color: currentColor!important; }
</style>
<div id="pa">
<audio id="audio" src="https://music.163.com/song/media/outer/url?id=2021988209" autoplay loop></audio>
<video class="pd-vid" src="https://img.tukuppt.com/video_show/2418175/00/02/31/5b557e8d6a392.mp4" autoplay loop muted></video>
<div id="ma" class="grayscale">
<svg id="msvg" width="100%" height="100%" viewbox="-200 -200 400 400"></svg>
</div>
<svg id="heart" width="400" height="400"><title>ALT+X</title></svg>
</div>
<script type="module">
import { FS } from 'https://638183.freep.cn/638183/web/js/fullscreen.js';
import Dr from 'https://638183.freep.cn/638183/web/mod/svgdr.js';
var dr = Dr.dr(msvg);
var d = 'M0 0 V30 V-10 H-15 V-20 H15 V-30 H-15 V-40 H15 V-50 H-15 V-60 H15 V-70 H-15 V-80 H15 V-90 H-15 V-100 H15 V-110 H-15 V-120 H15 V-130 H-15 V-140 H15 V-150 H-15V-160 H0 V-200';
var tt = 10;
Array.from({length: tt}).forEach((_,k) => {
dr.path(d,'none', 'lightgreen', 3).transform(`rotate(${360/tt*k})`);
});
dr = Dr.dr(heart);
d = 'M15,45 A30,30,0,0,1,75,45 A30,30,0,0,1,135,45 Q135,90,75,130 Q15,90,15,45 Z';
Array.from({length: 3}).forEach((_, i) => {
var x = i * 120, y = Math.random() * 260;
dr.path(d,'pink').style(`--dx: ${x}px; --dy: ${y}px; transition: ${Math.random() + 0.3}s;`);
});
FS(pa, ma);
audio.ontimeupdate = () => heart.style.setProperty('--scale', Math.random() * 0.2 + 0.8);
heart.onclick = () => ma.click();
</script>
|