点击按钮想在网页中播放一段提示音,想到html有audiu标签,所以一开始的想法就是动态生成一个audio插到页面当中去。调试时候发现有个致命的问题,当页面长时间不去操作之后,再点击按钮就没声音了(audio已经插入到了页面当中),但是之后再点击就有了~~~~
点击按钮想在网页中播放一段提示音,想到html有audiu标签,所以一开始的想法就是动态生成一个audio插到页面当中去。调试时候发现有个致命的问题,当页面长时间不去操作之后,再点击按钮就没声音了(audio已经插入到了页面当中),但是之后再点击就有了~~~~
直接把audio标签写在html中,写个样式隐藏起来。
<audio src='...' style='display:none' id='audio'></audio>
function addVoice(){
document.getElementById('audio').play();
}
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
6 回答1.1k 阅读
2 回答1.3k 阅读✓ 已解决
如果只是简单的提示音的话,可以参考这篇:利用HTML5 Web Audio API给网页JS交互增加声音
另外单就你的代码来说,为什么不DOM Ready以后一次插入然后反复播放呢?而且你3秒删除这个时间是和业务的时间能完美契合的么?