【发布时间】:2019-06-06 11:43:29
【问题描述】:
我有一个带有一堆音频链接的 html。我正在尝试让我的所有音频链接在点击时播放/暂停,我已经尝试了解决方案here。这正是我所追求的,除了我现在坚持修改此函数以应用于我的代码中的所有音频链接(因为我无法为每个链接定义一个函数)。关于如何做到这一点的想法?
例子:
<script type="text/javascript">
function loadAudio(source) {
currentSource = source;
audioSource.src = source;
audio.load();
}
var audio = document.getElementById('audio');
var audioSource = document.getElementById('audioSource');
var currentSource;
document.querySelectorAll('.play-audio').forEach(function(link) {
link.addEventListener('click', function() {
var linkSource = this.dataset.audio;
if (currentSource === linkSource) {
if (audio.paused) {
audio.play();
} else {
audio.pause();
}
} else {
loadAudio(linkSource);
audio.play();
}
});
});
</script>
<audio id="audio">
<source id="audioSource" src=""></source>
Your browser does not support the audio format.
</audio>
<table>
<tr>
<td><a href="#" class="play-audio" data-audio="https://...1">Play 1</a></td>
</tr>
<tr>
<td><a href="#" class="play-audio" data-audio="https://...2">Play 2</a></td>
</tr>
</table>
【问题讨论】:
-
添加部分代码,看看你是怎么做的以及在哪里触摸代码
标签: javascript html web audio