|
|

楼主 |
发表于 2025-7-15 22:53
|
显示全部楼层
isRun 是开关,本例开始时 isRun = false,如果仅以本例为例,初始声明变量时设为真,isRun = true,并运行一次 animate 函数,就是自动播放了:
var ..., isRun = true; // 声明开关变量并赋值为 true
animate(); // 运行一次动画函数
用在音画帖的时候,则无需 isRun 变量,将动画的运行放在 audio 标签的相关监听事件里:
// animate函数加入一个取消机制以防止动画在音乐重放时加速
function animate() {
cancelAnimationFrame(rTime);
//。。。其余代码不变
}
// 联动管理函数 mState(),代替 click 事件
function mState() {
// 。。。其它代码
aud.paused ? cancelAnimationFrame(rTime) : animate();
}
// 音频标签两个监听事件运行 mState() 函数,假设id="aud"
aud.onplaying = aud.onpause = () => mState();
如果不需要音频联动管理函数,就把函数里那一行写在箭头符号的后面,取代 mState() |
评分
-
| 参与人数 1 | 威望 +50 |
金钱 +100 |
经验 +50 |
收起
理由
|
红影
| + 50 |
+ 100 |
+ 50 |
赞一个! |
查看全部评分
|