|
|

楼主 |
发表于 2024-10-29 19:44
|
显示全部楼层
代码:
- <p style="text-align:center;">
- <svg id="mysvg" width="700" height="400"></svg>
- </p>
- <script>
- var sc = document.createElement('script');
- sc.src = 'https://638183.freep.cn/638183/web/js2024/svgdr_trial.js';
- document.body.appendChild(sc);
- sc.onload = () => {
- var dr = _dr(mysvg)
- var balls = [], playing = true;
- dr.path('M0 400 Q350 -280,700 400', 'none','none').id('path');
- var len = path.getTotalLength();
- for(var i = 1, tt = 20; i < tt; i ++) {
- var point = path.getPointAtLength(len / tt * i);
- var color = '#' + Math.random().toString(16).substring(2,8),
- delay = Math.random() * i * -0.1;
- var cx = point.x, cy = point.y;
- dr.circle(cx,cy,20,color).set('class','ball').style(`--delay: ${delay}s`);
- balls.push(dr.elm);
- }
- dr.css(`
- #mysvg { --state: running; }
- .ball { running; cursor: pointer; animation: flash .1s var(--delay) linear infinite alternate var(--state); }
- @keyframes flash { to { opacity: .2; } }
- `);
- balls.forEach(b => b.onclick = () => {
- playing = !playing;
- dr.svg.style.setProperty('--state', ['paused','running'][+playing]);
- });
- };
- </script>
复制代码
|
评分
-
| 参与人数 2 | 威望 +80 |
金钱 +160 |
经验 +80 |
收起
理由
|
花飞飞
| + 30 |
+ 60 |
+ 30 |
很给力! |
红影
| + 50 |
+ 100 |
+ 50 |
赞一个! |
查看全部评分
|