我发现这个代码在onClick上播放音频文件,但它只允许播放一个音频文件.现在,我正在尝试重写代码,但它不起作用,我找不到问题.我是JavaScript的新手,所以如果你有更好的解决方案,请告诉我.
为了理解我想要实现的目标,这就是我的理念:我正在尝试为移动设备(iOS和Android)制作一个基于网络的应用程序,孩子们可以将声音混合起来制作自己的歌曲.他们可以将声音拖放到播放所有声音的时间线中.但在他们拖动它们之前,它们也可以播放它们(因此它们可以在将它们拖入时间线之前通过点击包含图像的按钮来听到声音).
这是原始的HTML:
<input id="audiofile" type="text" value="" style="display: none;"/>
<button id="myElement" class="dndplay" onClick="playAudio();" draggable="true"></button>
<button id="myElement" class="dndplay" onClick="playAudio();" draggable="true"></button>
<audio id="myaudio"></audio>
Run Code Online (Sandbox Code Playgroud)
这是原始的JavaScript:
var currentFile = "";
function playAudio() {
var oAudio = document.getElementById('myaudio');
// See if we already loaded this audio file.
if ($("#audiofile").val() !== currentFile) {
oAudio.src = $("#audiofile").val();
currentFile = $("#audiofile").val();
}
var test = $("#myaudio");
test.src = $("#audiofile").val();
oAudio.play();
}
$(function() {
if (Modernizr.audio) {
if (Modernizr.audio.ogg) {
$("#audiofile").val("sounds/Stoomloco_Lunetten.ogg");
}
if (Modernizr.audio.mp3) {
$("#audiofile").val("sounds/Stoomloco_Lunetten.mp3");
}
}
}); …Run Code Online (Sandbox Code Playgroud)