2013-03-18 99 views
0

我想接收邮件时播放的声音,所以我搜索了一下,发现很多的解决方案,但是,我发现是播放声音当接收到消息

<script> 
     $('body').append('<embed src="beep.mp3" autostart="true" hidden="true">'); 
    </script> 

,但问题是,它不播放声音最简单的解决方案在Godzilla/IE中,并在Chrome中播放。 有没有什么办法可以解决这个问题,而无需添加任何额外的插件(Mozilla/JQuery)。 而且在chrome中还有一个问题,当声音播放时,主窗口的滚动条从其位置移开。 我的主要问题是播放声音,所以首先是优先。 任何人都知道它的解决方案,然后plz与我们分享 谢谢。

+0

尝试使用html5音频api代替,并作为回退使用闪光灯。 – Ibu 2013-03-18 17:49:08

+0

我也使用**

回答

7

试试这个,我认为这是没有人见过的最简单的解决方案... :) 你只是做一件事,你应该转换beep.mp3beep.wav 因为一些浏览器不了解MP3所以你只要将其转换为WAV,然后用这只3行代码

<script> 
    var aSound = document.createElement('audio'); 
    aSound.setAttribute('src', 'beep.wav'); 
    aSound.play(); 
</script> 

这会打得这么当页面是打开/重新加载您可以根据需要进行设置,还有一件事情需要js 1.6或更高版本。希望这会解决你的两个问题。

+0

amaiing .....真棒 – 2013-03-19 11:55:50

+0

没有额外的js是必需的...和非常短的感谢很多@aysha – 2013-03-19 11:56:41

+0

真的帮助我:) – Patareco 2013-06-05 10:56:20

0

尝试以下的(未测试)

保持声音文件都准备好嵌入代码,并使用JavaScript函数来发挥它...

<script> 
    function PlaySound(soundObj) { 
     var sound = document.getElementById(soundObj); 
     sound.Play(); 
    } 
</script> 

<embed src="success.wav" autostart="false" width="0" height="0" id="sound1" enablejavascript="true"> 
+0

我已经试过这一个,但同样problem.btw谢谢 – 2013-03-18 17:52:48

1

打开此链接Play Sound without browser plugin

在这个链接你可以获得代码来解决你的问题。 和第二个问题可能b。通过删除$(“身体”)

 $('body').append('<embed src="beep.mp3" autostart="true" hidden="true">'); 

解决,并设置任何

+0

谢谢.....这两个问题已解决只有链接你给。 谢谢 – 2013-03-19 11:03:23

0

如果你不想创建多个音频元素,你可以尝试设置currentTime属性设为0,所以音频文件重新开始。

<script> 
    function play() { 
     var sound = document.getElementById("audio"); 
     sound.currentTime = 0; 
     sound.play(); 
    } 
</script> 

<audio src="success.wav" autostart="false" width="0" height="0" id="audio" />