求问,关于audio的onload事件
javascript吧
全部回复
仅看楼主
level 13
我查资料得知<audio>支持html全局事件,也就支持onload。我想批量预加载一些音频并在加载完成后执行一些代码,于是我写了:
onloadAsset会统计已加载的音频数量、在控制台中输出一条提示文本并检测所有音频是否全部加载完毕。加载音频的函数执行了之后控制台里没有任何反应。于是我又在页面中直接放入了一个用于测试的元素:
<audio src="assets/music/empty.mp3" controls="controls" onload="console.log(1)"></audio>
音频可以正常加载甚至能正常播放(虽然它叫empty.mp3但它其实有声音),但控制台里仍然什么也没有。显然,这个onload根本没执行。求问各位大佬这是怎么回事?audio实际上不支持onload事件吗?
2022年06月06日 17点06分 1
level 2
对,audio不支持onload
2022年06月06日 21点06分 2
那请问有什么替代方案吗
2022年06月06日 22点06分
在js里加载吧
2022年06月06日 22点06分
level 6
😁😁😁
2022年06月06日 22点06分 3
level 13
又查了查才知道有种东西叫oncanplaythrough,完美符合我需求。。。。。。
对我自己感到无语
2022年06月06日 23点06分 4
level 6
canplay 与 canplaythrough
一个可播放可能播放过程要暂停
一个是完全加载完能播放到结尾
2022年06月06日 23点06分 5
谢谢
2022年06月07日 06点06分
level 6
事件所有属性不是所有标签都支持的嘛?
2022年06月11日 01点06分 6
1