Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何让网页播放声音_Javascript_Html_Audio - Fatal编程技术网

Javascript 如何让网页播放声音

Javascript 如何让网页播放声音,javascript,html,audio,Javascript,Html,Audio,根据具体情况,我需要在加载OK/NOT OK信号后立即从网页发出声音。页面已生成,我可以完全控制内容 我如何以一种现代的、跨浏览器兼容的方式做到这一点?我遇到过标签问题,可能是浏览器问题,可能是我做错了。目前我使用的是一个小型flash播放器,但正如您可能猜到的,它不是一个完美的解决方案 是的,声音正是用户想要的,所以请不要用声音的网站不是一个好主意-评论。一般来说,我会同意,但也有一些特殊情况。使用音频元素在现代浏览器中有效,而对于较旧的浏览器,您可以使用嵌入式回退功能,根据已安装的插件的不同

根据具体情况,我需要在加载OK/NOT OK信号后立即从网页发出声音。页面已生成,我可以完全控制内容

我如何以一种现代的、跨浏览器兼容的方式做到这一点?我遇到过标签问题,可能是浏览器问题,可能是我做错了。目前我使用的是一个小型flash播放器,但正如您可能猜到的,它不是一个完美的解决方案

是的,声音正是用户想要的,所以请不要用声音的网站不是一个好主意-评论。一般来说,我会同意,但也有一些特殊情况。

使用音频元素在现代浏览器中有效,而对于较旧的浏览器,您可以使用嵌入式回退功能,根据已安装的插件的不同,该功能可能有效,也可能无效,但如果无法正常工作,您也无法做到:

<audio src=maamme.mp3 controls autoplay>  
  <embed src=maamme.mp3>
</audio>

这将在放置此元素的位置创建可见控件。您可以在某种程度上修改或隐藏这些控件。如果希望更准确地控制演示文稿的启动时间,可以将元素动态添加到文档中,而不是静态地添加到文档中。如果旧浏览器不太相关,您也可以使用不带autoplay的音频元素,并使用HTMLMediaElement界面启动演示文稿,在演示文稿结束时执行操作,等等。

如果您希望自己控制音频,您可以通过javascript编程执行

window.onload = function(){
    var snd = new Audio("sound/mysound.wav");
    snd.play();
}
这将加载音频文件,并在加载页面后自动播放。然而,应该注意的是,iOS限制了任何这样播放的音频,没有用户交互,例如点击,因为这会迫使用户使用带宽,并夺走他们的控制权。Android和其他设备可能允许也可能不允许自动播放音频,但桌面上所有最新的web浏览器都允许使用Chrome、FF、IE9+、Safari

请显示您的尝试。有人已经提出了一个类似的问题。这有用吗?你检查过了吗