Javascript 代码播放音频

Posted

技术标签:

【中文标题】Javascript 代码播放音频【英文标题】:Javascript Code Plays Audio 【发布时间】:2014-04-24 21:34:37 【问题描述】:

我试图弄清楚如何让 javascript 键盘触发播放与该代码相对应的特定曲目。我发现下面的代码为键盘中输入的扩展名打开了一个新窗口,但是我如何让它触发使用相同代码播放音轨(即输入“0001”来播放名为“0001”的文件?

感谢资源和提示!非常感谢!

<body onload="emptyCode();">

<script type="text/javascript">
function addCode(key)
    var code = document.forms[0].code;
    if(code.value.length < 4)
        code.value = code.value + key;
    
    if(code.value.length == 4)
        document.getElementById("message").style.display = "block";
        setTimeout(submitForm,1000);    
    


function submitForm()
    document.forms[0].submit();


function emptyCode()
    document.forms[0].code.value = "";

</script>
<style>
body 
    text-align:center; 
    background-color:#333333; 
    font-family:Verdana, Arial, Helvetica, sans-serif;
   
#keypad margin:auto; margin-top:20px;

#keypad tr td 
    vertical-align:middle; 
    text-align:center; 
    border:1px solid #000000; 
    font-size:18px; 
    font-weight:bold; 
    width:40px; 
    height:30px; 
    cursor:pointer; 
    background-color:#666666; 
    color:#CCCCCC;
#keypad tr td:hover background-color:#999999; color:#FFFF00;

.display 
    width:130px; 
    margin:10px auto auto auto; 
    background-color:#000000; 
    color:#00FF00; 
    font-size:18px; 
    border:1px solid #999999;

#message 
    text-align:center; 
    color:#009900; 
    font-size:14px; 
    font-weight:bold; 
    display:none;

</style>

<form action="code.htm" method="get">
<table id="keypad" cellpadding="5" cellspacing="3">
    <tr>
        <td onclick="addCode('1');">1</td>
        <td onclick="addCode('2');">2</td>
        <td onclick="addCode('3');">3</td>
    </tr>
    <tr>
        <td onclick="addCode('4');">4</td>
        <td onclick="addCode('5');">5</td>
        <td onclick="addCode('6');">6</td>
    </tr>
    <tr>
        <td onclick="addCode('7');">7</td>
        <td onclick="addCode('8');">8</td>
        <td onclick="addCode('9');">9</td>
    </tr>
    <tr>
        <td onclick="addCode('*');">*</td>
        <td onclick="addCode('0');">0</td>
        <td onclick="addCode('#');">#</td>
    </tr>
</table>
<input type="text" name="code" value="" maxlength="4" class="display" readonly="readonly" />
<p id="message">HOLD PLEASE</p>
</form>
</body>

【问题讨论】:

【参考方案1】:

首先,建议使用 Buzz 之类的库,它也需要 jQuery。

例如,您可以拥有一个名为 0001.mp3 的音频文件,然后单击按钮获取键盘 ($("button").val()) 中的值,然后您可以将其传递给新的 Buzz 对象并从那里控制它。

【讨论】:

以上是关于Javascript 代码播放音频的主要内容,如果未能解决你的问题,请参考以下文章

如何在 JavaScript 中为视频播放不同的音频?

.wav 音频文件无法播放 - Javascript

需要帮助修复我的javascript“for循环”以播放音频播放列表[重复]

使用Javascript播放数组序列音频文件[重复]

JavaScript - 如何选择音频播放?

点击时音频播放的Javascript延迟