通常想要播放音频第一思路是写一个 audio
标签,实际上单纯 JS 不插入标签也是可以实现的。这种方式只能是 audio
video
则没有提供此类 api。
具体实现:
const instance = new Audio()
instance.crossOrigin = '*'
instance.oncanplaythrough = () => {
instance.play()
}
instance.onended = () => {
// 播放结束触发,自定义播放按钮重置
}
instance.src = audioUrl
instance.load()
创建的 audio
自带一个 preload="audo"
的属性,指示浏览器预加载音频资源