使用jQuery 1.4播放声音的跨平台,跨浏览器方式?

时间:2010-05-04 21:24:07

标签: jquery audio

我正在尝试让jQuery在元素悬停/点击上播放声音。 (这就像没有闪光灯的Flash网站)

我已经尝试了Cross-platform, cross-browser way to play sound from Javascript?中推荐的方法,jQuery Sound插件和其他一些教程,但没有成功。我假设这是因为他们自2008年以来没有更新过。

有人有任何建议吗?

5 个答案:

答案 0 :(得分:33)

不需要任何这些。 HTML标记与JavaScript相结合,可以解决问题。

<audio id="soundHandle" style="display: none;"></audio>
<script>
  soundHandle = document.getElementById('soundHandle');
  soundHandle.src = '/blah/blah.mp3';
  soundHandle.play();
</script>

答案 1 :(得分:6)

实际上,以真正的跨浏览器兼容方式进行操作是不可能的,例如iPhone只能在专用播放器“页面”上播放声音。但是,其他答案中的一些插件应该可以完成大多数(桌面)浏览器的工作。

答案 2 :(得分:5)

音频标签在某些浏览器中对我不起作用,所以这就是我完成它的方式:

function playBuzzer(){
        $("body").append("<embed src='/web/sounds/Buzz.mp3' autostart='true' loop='false' width='2' height='0'></embed>");
}

每当我想播放声音(onmouseover,onclick,onload ......)时,我都会调用此函数。

答案 3 :(得分:2)

试试这个:http://swaggplayer.no.de/demos 它使用闪光灯播放声音 或者这个 http://www.schillmania.com/projects/soundmanager2/

答案 4 :(得分:0)

http://codecanyon.net/item/fancy-music-player-v20-jquery-plugin/498071?ref=1stwebdesigner

播放器的工作原理如下 - 首先它会检测是否安装了Flash Player 9或更高版本。如果是,将使用隐藏的flash电影(swf),通过javascript与HTML用户界面进行通信。如果没有安装Flash Player,将使用新的HTML5音频引擎,所有iToys(iPhone,iPad等)都支持。