【问题标题】:sound does not play and console does not work声音不播放,控制台不工作
【发布时间】:2015-11-21 09:43:36
【问题描述】:

我想在我的网站上发出不同的哔声,但它不起作用

<body>

<!-- html work-->

    <audio id="beep-07" src="../audio/beep-07.wav" autostart="false"></audio>
    <audio id="button-3" src="../audio/button-3.wav" autostart="false"></audio>
    <button onclick="playsound('beep-07')">beep-07</button> 
    <button onclick="playsound('button-3')">button-3</button> 

<!-- js work-->

<script>
    function playsound(name) {
        var sound = document.getElementById(name);
        sound.play();
        console.log(sound,name,"1");
    }
</script>

</body>

有谁知道为什么它不能按预期工作? 顺便说一句,控制台日志也没有任何输出!有人知道为什么吗? 更新 哦,伙计们,我很抱歉!问题是代码中的一个简单的错字!感谢您的帮助!我很抱歉!

【问题讨论】:

  • 控制台有错误吗?按钮在你的真实代码中的形式?
  • Yes,"uncaught TypeError: Cannot read property 'play' of null"
  • 不,我认为您的意思不是另一个答案中提到的问题,如果是这样,请阅读我的评论:)

标签: javascript html audio console console.log


【解决方案1】:

试试:

<button onclick="playsound('beep-07')">beep-07</button>
<button onclick="playsound('button-3')">button-3</button>

您可以在此stackoverflow thread 上阅读有关嵌套引号和撇号的信息。

【讨论】:

  • 没有区别,你是什么意思?你的意思是我应该使用'而不是"?你确定它们之间有区别吗?
  • 哦,是的!我明白了!但事情是在我的实际代码中,该函数不是用按钮调用的,而是在另一个函数中用一行调用:playsound("beep-07") 所以对我来说这不是问题:)谢谢您的回答,并为错误感到抱歉,我现在将编辑问题;)
  • 不同之处在于,写onclick="playsound("beep-07")" 结束整个onclick 太快了。浏览器会将其解释为playsound((从第一个" 到下一个遇到的"),这是不正确的。如果您不这样使用它,那么这当然不是问题。
【解决方案2】:

 function playsound(name) {
        var sound = document.getElementById(name);
        sound.play();
    }
<audio id="beep-07" src="http://www.soundjay.com/button/beep-07.wav" autostart="false"></audio>
    <audio id="button-3" src="../audio/button-3.wav" autostart="false"></audio>
<button onclick="playsound('beep-07')">beep-07</button> 

试试这个:

  function playSound () {
        document.getElementById('beep-07').play();
    }
    <audio id="beep-07" src="http://www.soundjay.com/button/beep-07.wav"></audio>
    <button onclick="playSound()">beep-07</button>

  

【讨论】:

  • 是的,它就是这样工作的,我知道!但我想要不同的声音和一个功能:)
  • @aran:- 正如 ROAL 所说,您只需更改引号即可。请参阅编辑后的答案。它有效
【解决方案3】:

您的代码绝对没问题,但出了点小问题。 试试这个

<button onclick="playsound('beep-07')">beep-07</button> 
<button onclick="playsound('button-3')">button-3</button> 

谢谢

【讨论】:

    猜你喜欢
    • 2014-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-20
    • 2011-02-25
    • 2020-02-15
    • 2015-12-22
    • 2022-01-25
    相关资源
    最近更新 更多