如果使用JavaScript触发onload事件,如何播放声音文件?
例如:如果我有一个网页,当用户点击一个按钮时会弹出一个窗口。正在加载弹出窗口时,页面将播放声音文件。
答案 0 :(得分:6)
在文档中添加HTML5音频元素:
<audio id="foobar" src="yoursample.ogg" preload="auto">
通过CSS隐藏它:
#foobar { display: none }
在任何JavaScript事件处理程序上播放音频:
var sample = document.getElementById("foobar");
sample.play();
了解更多信息
https://developer.mozilla.org/en-US/docs/Using_HTML5_audio_and_video
根据您的Web应用程序目的,您可能希望支持旧版浏览器:
http://www.misfitgeek.com/play-sound-in-html5-and-cross-browser-support-with-backward-compatability/
答案 1 :(得分:1)
尝试一下:
//store the audiofile as variable.
var popupsound = document.getElementById("notifypop");
function autoNotify() {
popupsound.play(); //play the audio file
}
#notifypop{ display:none;}
<body onload="autoNotify()"> <!--Play the audio file on pageload -->
<audio id="notifypop"> <!--Source the audio file. -->
<source src="path/sound.ogg" type="audio/ogg">
<source src="path/sound.mpeg" type="audio/mpeg">
</audio>
<script src="path/sound.js" type="text/javascript"></script><!--Load your javascript sound file.-->
</body>
详细了解HTML5媒体格式 https://developer.mozilla.org/en-US/docs/Web/HTML/Supported_media_formats
答案 2 :(得分:0)
一种方法是在onclick上插入HTML音频标签并将其设置为自动启动: