如果我们点击相应的链接,我编写了播放两个音频的代码。如果我们在第一个播放时点击第二个链接,如何编写jquery来停止第一个音频,反之亦然。
<p>Audio1</p>
<audio id="playauido1">
<source src="audio1.mp3" type="audio/mp3" />
</audio>
<a href="#" onclick="document.getElementById('playauido1').play()"> Paly first audio </a>
<p>Audio2</p>
<audio id="playauido2">
<source src="audio2.mp3" type="audio/mp3" />
</audio>
<a href="#" onclick="document.getElementById('playauido2').play()"> Paly second audio </a>
答案 0 :(得分:0)
audioElement有paused
属性。如果你想检查其他音频文件是否正在播放,你可以做类似的事情
<script>
function stopPlaying(audioElement) {
if(!audioElement.paused){
audioElement.pause();
}
}
</script>
<p>Audio1</p>
<audio id="playauido1">
<source src="audio1.mp3" type="audio/mp3" />
</audio>
<a href="#" onclick="document.getElementById('playauido1').play();stopPlaying(document.getElementById('playauido2'));"> Paly first audio </a>
<p>Audio2</p>
<audio id="playauido2">
<source src="audio2.mp3" type="audio/mp3" />
</audio>
<a href="#" onclick="document.getElementById('playauido2').play();stopPlaying(document.getElementById('playauido1'));"> Paly second audio </a>
如果你有更多的音频文件,你可以创建一个数组来存储音频元素,并在stopPlaying
函数中进行for循环检查和暂停音频文件。
但实际上,如果音频在你调用.pause()时已经暂停,它就什么都不做,所以你不必检查它是否正在播放。只需调用pause()
<a href="#" onclick="document.getElementById('playauido1').play();playauido2.pause();">
这更简单,更容易