怎么在jsp中播放一段声音,要求电脑浏览器与手机浏览器都能使用,兼容性好。

想在jsp中播放一段声音,触发按钮时发出。要求电脑浏览器与手机浏览器都能使用最好给出具体代码。谢谢!!!

能不能播放还得看你音频的格式,你要准备ogg和mp3 2中形式的音频,判断支持html5就用audio标签播放(智能手机浏览器大部分都支持html5,非智能就不懂了。。),不支持(IE8-这种浏览器)就用embed导入mp3文件

audio支持的音频看这个:http://www.cnblogs.com/linn/p/3408515.html

DEMO


<div id="dvAudio"><audio id="audio" controls="controls" autoplay="autoplay">
<source src="sound.ogg" type="audio/ogg">
<source src="sound.mp3" type="audio/mp3">
<source src="x.wav" type="audio/wav">
你的浏览器不支持audio标签
</audio></div>
<script>
    var audio = document.getElementById('audio');
    if (!audio.canPlayType) { //不支持audio,播放导入mp3
        audio.parentNode.removeChild(audio);
        document.getElementById('dvAudio').innerHTML = '<embed autoplay src="sound.mp3"/>';
    }
</script>

如果你不介意为了一个小功能增加100多KB,可以使用jPlayer-The jQuery HTML5 Audio / Video Library

Platforms and Browsers
•Windows: Chrome, Firefox, Internet Explorer, Safari, Opera
•Windows (legacy): IE6, IE7, IE8, IE9, IE10, IE11
•OSX: Safari, Firefox, Chrome, Opera
•iOS: Mobile Safari: iPad, iPhone, iPod Touch
•Android: Android 2.3 Browser
•Blackberry: OS 7 Phone Browser, PlayBook Browser

Media Support
•HTML5: mp3, mp4 (AAC/H.264), ogg (Vorbis/Theora), webm (Vorbis/VP8), wav
•Flash: mp3, mp4 (AAC/H.264), rtmp, flv

For cross-browser support, a format must be supplied that works in both HTML5 and Flash.
Optional additional formats may be supplied to increase cross-browser HTML5 support.