我不明白为什么它不起作用。
const button = document.querySelector('.play');
const alarm = document.getElementById('alarm');
button.addEventListener('click',function(){
alarm.play();
})
这是html:
<audio id="alarm">
<source src="sound/Wecker-sound.mp3">
</audio>
最佳答案
没有更好的答案。这是针对我一年内进行搜索的情况:我收到“audio.play()不是函数”错误,因为我无意中创建了一个畸形的对象,该对象的属性不正确(愚蠢,因为传入了重命名 Prop ,这很愚蠢) React *),因此JS尝试处理该命令感到窒息。一旦我解决了这个问题并提供了正确的文件源,错误就消失了。
*音频文件的原始数组具有this.state键,例如'url'和'id',但是当我遍历该数组时,我确实像一样愚蠢的东西,但是当基于它构建实际值时,我仍在尝试使用“url”和“id”,而不是新重命名的 Prop “clip”和“clipId”。我正在四处逛逛,但是花了我太长时间才弄明白了这些东西,并弄清楚了我的错误(据我所知,我可能可以摆脱一层传递的 Prop ……重构一次即可)全部启动并运行)。
关于javascript - 如何修复audio.play()不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56922462/