2013-03-23 173 views
0

嗨,我设法播放和暂停一个MP3文件,只要我点击一个图像,问题是,每次我选择另一个图像(这意味着播放不同的MP3歌曲)它会自动恢复同一首歌。Javascript歌曲播放和暂停

的Javascript

function StartOrStop(audioFile) 
    { 
    var audie = document.getElementById("myAudio"); 
    if(!audie.src) 
     audie.src = audioFile; 
    if(audie.paused == false) 
    { 
     audie.pause(); 
    } 
    else 
    { 
     audie.play(); 
    } 
    } 

HTML

<img src="images/play.png" alt="Play Button" width="57" height="50" onclick="StartOrStop('RWY.mp3')"> 

<img src="images/play.png" alt="Play Button width="57" height="50" onclick="StartOrStop('EL.mp3')"> 

<audio controls id="myAudio" ></audio> 

任何建议儿子我怎么能解决这个问题?

+0

这条线alt =“播放按钮宽度=”57“应该是alt =”播放按钮“width =”57“ – Ruwantha 2013-03-23 14:01:37

+0

nop那没有解决问题 – user2202031 2013-03-23 15:40:52

+0

我注意到你问了两次这个问题。它在这里http://stackoverflow.com/questions/15589048/javascript-playing-and-pausing-different-audio-files-using-different-images – TommyBs 2013-03-23 18:00:06

回答

1

您没有在点击时分配新的src,您正在检查它是否首先存在。由于src已存在,第二个文件将永远不会被分配到src

编辑

而应该检查,看看是否audie.src === audioFile

0

怎么样这种方法

<audio id="demo1" src="RWY.mp3"></audio> 
<div> 
    <button onclick="document.getElementById('demo1').play()">Play the Audio</button> 
    <button onclick="document.getElementById('demo1').pause()">Pause the Audio</button> 
    <button onclick="document.getElementById('demo1').volume+=0.1">Increase Volume</button> 
    <button onclick="document.getElementById('demo1').volume-=0.1">Decrease Volume</button> 
</div> 
<audio id="demo2" src="EL.mp3"></audio> 
<div> 
    <button onclick="document.getElementById('demo2').play()">Play the Audio</button> 
    <button onclick="document.getElementById('demo2').pause()">Pause the Audio</button> 
    <button onclick="document.getElementById('demo2').volume+=0.1">Increase Volume</button> 
    <button onclick="document.getElementById('demo2').volume-=0.1">Decrease Volume</button> 
</div> 

而是按钮,你可以使用图像只是标签的变化。