audio_tag为不同的按钮播放相同的文件
我是使用audio_tag的新手; 我正在尝试使用一组按钮来播放简短的音频文件。 我要发布这篇文章来实现这个function。 我目前有两个带有相关按钮的音频标签,它们应该播放不同的文件。 但是,两个按钮都播放第一个音频文件。 我正在为每个按钮分配不同的ID,但这没有帮助。 如果我删除第一个文件,则第二个按钮播放预期的文件。 (mp3文件位于/ public / audios中)。
如何将正确的文件关联到其按钮?
视图:
application.js中:
jQuery(document).ready(function() { $("#audioButtonA").on("click", function() { $(".audio-play")[0].currentTime = 0; return $(".audio-play")[0].play(); }); }); jQuery(document).ready(function() { $("#audioButtonE").on("click", function() { $(".audio-play")[0].currentTime = 0; return $(".audio-play")[0].play(); }); });
通过使用$(".audio-play")[0].play()
您总是选择与文件( a.mp3
)相同的元素,通常是具有类audio-play
的第一个元素。 为了实现您的目标,在按钮单击时您必须选择前一个元素,它是一个音频标签,如下所示:
$("#audioButtonE").on("click", function() { var audio = $(this).prev()[0]; audio.currentTime = 0; return audio.play(); });