如何通过HTML5中的<audio>
标记使用JavaScript部署选定的音频文件?
我的代码是这样的:
<audio controls id="audio1">
<source src="" type="audio/ogg">
<source src="" type="audio/mpeg">
</audio>
我不想手动提供src
。相反,我想通过JavaScript动态设置它。
在JavaScript中,用于从文件中选择src
:
document.querySelector('#fileSelect').addEventListener('click', function(e) {
// Use the native click() of the file input.
audio.src = document.querySelector('#fileElem').click();
}, false);
我欢迎任何建议。感谢。
答案 0 :(得分:1)
我不确定我是否理解你想要实现的目标。但是要设置音频源,就像你发布的那样:
var element = document.getElementById('audio');
if (element.canPlayType('audio/wav')) {
element.src = "link";
} else if (element.canPlayType('audio/mpeg')) {
element.src = "link";
} else {
alert('Your browser does not support wav/mpeg audio.');
}
不工作吗?究竟是什么问题?也许准备一些小提琴,仔细看看你想要达到的目标。
答案 1 :(得分:1)
不是创建标记,而是为什么不创建一个对象音频,并执行以下操作:
var som = new Audio();
som.src = "powerup.mp3";
som.load();
并在audio.readyState >= audio.HAVE_CURRENT_DATA
之后
你可以致电som.play();
这是一段时间前为游戏框架写的示例:https://github.com/hamilton-lima/vaca5/blob/master/lib/audio.js