点击链接标签时播放音效

3

我希望每次在页面上单击鼠标时都能播放点击音效。

<audio id='aclick'>
  <source src="audio/click.mp3" type="audio/mpeg">
</audio>

$(document).on('click', function(){
    document.getElementById("aclick").play();
});

通常情况下它可以工作,但在链接元素上无法工作。

单击任何<a></a>元素-没有声音。

我的链接示例:

<a href='index.php'><img id='logoc' src='img/02.jpg' alt='img'></a>


请分享链接元素的HTML。 - brk
@brk,我已经完成了,请查看。 - user7461846
锚点标签中没有音频源。 - brk
@brk,但是锚点标签不是$(document)的一部分吗? - user7461846
1个回答

3
您需要将事件处理程序附加到具有点击事件的任何标记,如下所示。
$("*").on('click',function(){
  document.getElementById("aclick").play();
});

以下是类似于音频标签的内容:
<audio id='aclick' autoPlay='false' preLoad='auto' >
  <source src="audio/click.mp3" type="audio/mpeg">
</audio

但我不想只通过点击链接来播放声音,我希望可以通过点击页面上的任何元素来播放它。 - user7461846
使用 * 选择器 - Niladri
我认为问题出在立即点击链接后开始重定向,声音没有时间播放。但这是一个很小的音频文件,大约9KB,应该可以播放。 - user7461846
好的,那么您需要使用 event.preventDefault() 来阻止链接的默认操作,然后播放声音,最后使用 window.location.href 重定向到实际链接。 - Niladri
通过预加载,它可以在页面加载时播放,而不是在链接标签点击时播放。 - user7461846

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接