无法实现音频

时间:2016-10-28 23:13:56

标签: javascript html html5

我试图创建一个在按下时播放声音的链接。我找到了a solution describing how to do this,但是当我实现它时,我无法产生声音。相关的HTML如下。

  <div class="choices">
        <a class="buttons" id="choice1" href="#" onclick="choiceSelected();return false;"></a>
        <a class="buttons" id="choice2" href="#" onclick="choiceSelected();return false;"></a>
        <a class="buttons" id="choice3" href="#" onclick="choiceSelected();return false;"></a>
        <a class="buttons" id="choice4" href="#" onclick="choiceSelected();return false;"></a>
    </div>

这是javascript(它位于我文档头部链接的外部文件中):

 function choiceSelected(){ 
        var audio = new Audio("buttonClick.mp3");
        audio.play();
        console.log("Audio should have played");
    }

我添加了console.log("Audio should have played");以测试函数是否正常工作。控制台显示&#34;音频应播放&#34;并报告没有错误。一切似乎都在起作用,除了没有声音产生。声音文件buttonClick.mp3位于正确的路径中。

我尝试过使用不同的文件类型(OGG,AAC等),但没有一种可以使用。我还尝试用我知道有效的在线文件的链接替换文件,所以我不认为这是文件的问题。

我看到Safari没有播放音频来保存电源有一些问题,但那些文章看起来至少已有2-3岁了,所以我不确定是不是问题(如果它仍然是一个问题,你可以告诉我吗。

非常感谢任何有关使音频工作的帮助。

2 个答案:

答案 0 :(得分:0)

我无法告诉你问题是什么,但也许你可以尝试看看路径是否正确,我的意思是,水平,也许应该是&#34; ../ audio.mp3&# 34;

您也可以尝试使用音频标签播放

<audio id="myAudioTag">
    <source src="../file.mp3" type="audio/mp3" />        
</audio>

请注意,我没有使用&#34;控件&#34;属性,因为我不想让它显示。

在脚本中,你应该有这样的东西

document.getElementById('myAudioTag').play();

答案 1 :(得分:0)

感谢您的帮助,但事实证明这是一个损坏的文件。原始代码有效。