首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >音频接通不起作用

音频接通不起作用
EN

Stack Overflow用户
提问于 2022-04-06 14:49:09
回答 1查看 183关注 0票数 0

当用户与窗口交互时,音频播放,但是当音频结束时,它不记录“音频结束”

代码语言:javascript
复制
let audio = new Audio();

window.onclick = () => {
  if (audio.paused) pickMusic().play();
};

audio.onended = () => {
  console.log("audio ended");
};

function pickMusic() {
  switch (Math.floor(Math.random() * 1)) {
    case 0:
      return (audio = new Audio("/music/gorp.mp3"));
      break;
    case 1:
      return (audio = new Audio("/music/gorp.mp3"));
      break;
  }
}
代码语言:javascript
复制
<p>Click anywhere!</p>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-06 15:01:45

当您调用new Audio()时,它将覆盖已经与onended事件相关联的前面的音频。

在本例中,每当调用new Audio()时,还需要再次初始化onended事件

代码语言:javascript
复制
let audio = new Audio()

window.onclick = () => {
  if (audio.paused) pickMusic().play();
};

function pickMusic() {
  switch (Math.floor(Math.random() * 1)) {
    case 0:
      audio = new Audio("http://commondatastorage.googleapis.com/codeskulptor-assets/jump.ogg")
      audio.onended = () => {
        console.log("audio ended");
      };
      return audio;
    case 1:
      audio = new Audio("http://commondatastorage.googleapis.com/codeskulptor-assets/week7-brrring.m4a")
      audio.onended = () => {
        console.log("audio ended");
      };
      return audio;
  }
}
代码语言:javascript
复制
<p>Click anywhere!</p>

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71768936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档