jquery - 按钮点击声音

标签 jquery html html5-audio

这就是我想做的:

我有大约 30 个按钮。我希望当点击每个按钮时,它会播放不同的 mp3 文件。像这样http://www.soundjig.com/pages/soundfx/beeps.html

我只知道如何单击 1 个按钮来播放 1 个音频文件,如下所示:

<audio id="mysoundclip" preload="auto">
   <source src="ci1.mp3"></source>
</audio>
<button type="button" class="ci">play</button>

<script type="text/javascript">
  var audio = $("#mysoundclip")[0];
      console.log(audio);
  $("button.play").click(function() {
      audio.play();
  });
</script>

我不想将所有这些代码应用到所有按钮 - 有什么方法可以快速做到这一点吗?

感谢阅读!

最佳答案

您可以使用 JavaScript 提供的 Audio 类。

看看这个 fiddle .

这是片段。

var baseUrl = "http://www.soundjay.com/button/";
var audio = ["beep-01a.mp3", "beep-02.mp3", "beep-03.mp3", "beep-04.mp3", "beep-05.mp3", "beep-06.mp3", "beep-07.mp3", "beep-08b.mp3", "beep-09.mp3"];

$('button.ci').click(function() {
  var i = $(this).attr('id').substring(1);           //get the index of button
  new Audio(baseUrl + audio[i - 1]).play();          //play corresponding audio
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<button id="b1" type="button" class="ci">SOUND</button>
<br>
<button id="b2" type="button" class="ci">SOUND</button>
<br>
<button id="b3" type="button" class="ci">SOUND</button>
<br>
<button id="b4" type="button" class="ci">SOUND</button>
<br>
<button id="b5" type="button" class="ci">SOUND</button>
<br>
<button id="b6" type="button" class="ci">SOUND</button>
<br>
<button id="b7" type="button" class="ci">SOUND</button>
<br>
<button id="b8" type="button" class="ci">SOUND</button>
<br>
<button id="b9" type="button" class="ci">SOUND</button>
<br>

关于jquery - 按钮点击声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31715188/

相关文章:

javascript - 无法在 jQuery 中获取 Rails 返回值

html - twitter bootstrap - 根据最大​​列高设置列高

jquery - HTML5 音频 - 声音仅播放一次

javascript - 音频/视频 DOM 错误事件在 Chrome/Firefox 中不起作用

javascript - 单击单选按钮以滑动并显示隐藏的 div 并传递一个值

jquery - 需要正确的jquery选择器

Javascript - div 元素的流畅有机运动(旋转和平移)

javascript - 将数据从 HTML 表导出到 Excel 时排除特定列

javascript - 单击另一个选择框选项时,如何更改带有复选框中选项的选择框中的值

javascript - HTML5 中的这段音频有什么问题?