我想将第一个函数组合到第二个函数,所以我只能调用它一次

ist*_*ref 5 javascript html5-audio

我想将第一个函数组合到第二个函数,所以我只能调用它一次.基本上我有2个html5音频文件即时播放.一切正常.但是,如果我播放我的第一个音频,在此期间,如果我点击第二个音频,第一个音频上的暂停按钮不会更改为默认(关闭)

//First function 

function toggleState(item) {
  if (item.className == "play") {
    item.className = "pause";
  } else {
    item.className = "play";
  }
}

//Second function
// Play stop Music
function EvalSound(soundobj) {
  var thissound = document.getElementById(soundobj);
  if (thissound.paused) {
    thissound.play();
  } else {
    thissound.pause();
  }
}
Run Code Online (Sandbox Code Playgroud)

zer*_*298 0

这个问题的所有者用以下解决方案回答了这个问题:

我设法像这样修复它。

function toggleState(item, soundobj) {
  var thissound = document.getElementById(soundobj);
  if (item.className == "play") {
  thissound.play();
  item.className = "pause";
 } else {
  thissound.pause();
  item.className = "play";  
 }
}
Run Code Online (Sandbox Code Playgroud)

我还设法获取当前的曲目列表标题。例如,您单击一首歌曲,它会在 后显示,比如“现在播放 blablabla 歌曲”。

下面我向您展示一个工作示例。

HTML:

<option id="1" title="Now Playing." value="URL.mp3">Song name</option>
Run Code Online (Sandbox Code Playgroud)

JavaScript:

audioURL = document.getElementById('mylist');
var f = audioURL.options[audioURL.selectedIndex].title; //Here is title  
document.getElementById("demo").innerHTML = f; //output to f at demo elem.
Run Code Online (Sandbox Code Playgroud)