|
<style>
@import 'https://638183.freep.cn/638183/web/css/tz01.css';
#pa { --offsetX: 81px; --bg: url('https://638183.freep.cn/638183/t24/w4/gls.webp') no-repeat center/cover; --ma-size: 15%; }
#btnFs { left: 30px; bottom: 20px; color: skyblue; border-color: currentColor!important; }
#prog { position: absolute; cursor: pointer; opacity: 0.7; bottom: 20px; width: var(--ma-size); }
#ma { bottom: 50px; border-radius: 50%; }
#msvg rect { transform-box: fill-box; transform-origin: center; animation: rotate 4s var(--delay) linear infinite var(--state); }
</style>
<div id="pa">
<audio id="aud" src="https://music.163.com/song/media/outer/url?id=2156516185" autoplay loop></audio>
<video class="pd-vid" src="https://img.tukuppt.com/video_show/2629112/00/01/92/5b4de2164e31e.mp4" autoplay loop muted></video>
<progress id="prog"></progress>
<div id="ma"><svg id="msvg" width="100%" height="100%" viewBox="-200 -200 400 400"></svg></div>
</div>
<script type="module">
import { FS } from 'https://638183.freep.cn/638183/web/js/svglz_fs.js';
import Dr from 'https://638183.freep.cn/638183/web/mod/svgdr.js';
var dr = Dr.dr(msvg);
dr.defs('defs');
dr.g('g1').addTo('defs');
dr.polyline('0 0,0 150', 'none', 'cyan', 3).addTo('#g1');
dr.rect(-20, 150, 40, 40, 'skyblue').addTo('#g1');
var tt = 12;
Array.from({length: tt}).forEach((_,k) => {
dr.use('#g1', 0, 0).transform(`rotate(${360/tt*k})`).style(`--delay: ${Math.random() * -4}s`);
});
aud.ontimeupdate = () => prog.value=aud.currentTime/aud.duration;
aud.onplaying = aud.onpause = () => msvg.style.setProperty('--state', aud.paused ? 'paused' : 'running');
prog.onclick = (e) => aud.currentTime=aud.duration*e.offsetX/prog.offsetWidth;
FS(pa, ma);
</script>
|