Javascript 在移动设备上的回调中未播放音频对象
在我看来,在移动设备上运行时,音频对象不能在JavaScript回调中轻松播放。下面的代码显示了一个onload函数,它在PC上加载网页时播放声音,但在Android手机上什么也不播放 我不知情的猜测是,回调在音频对象开始播放之前返回,因此,出于某种深层次的原因,回调会消失 有什么办法解决这个问题吗?在完整版本中,JavaScript将从URL读取要播放的声音Javascript 在移动设备上的回调中未播放音频对象,javascript,android,callback,html5-audio,mobile-devices,Javascript,Android,Callback,Html5 Audio,Mobile Devices,在我看来,在移动设备上运行时,音频对象不能在JavaScript回调中轻松播放。下面的代码显示了一个onload函数,它在PC上加载网页时播放声音,但在Android手机上什么也不播放 我不知情的猜测是,回调在音频对象开始播放之前返回,因此,出于某种深层次的原因,回调会消失 有什么办法解决这个问题吗?在完整版本中,JavaScript将从URL读取要播放的声音 按钮在所有设备上正确播放声音,我想这是一个回调。。。?onload回调有什么特别的地方吗?Argh,这完全是因为在移动设备上,目前H
按钮在所有设备上正确播放声音,我想这是一个回调。。。?onload回调有什么特别的地方吗?Argh,这完全是因为在移动设备上,目前HTML5不允许播放声音,除非用户做了一些输入,大概是说我允许你播放声音。最新的Firefox浏览器V34似乎已经解除了限制,一切正常 Chrome中也有一个修复程序,您需要在地址栏中转到about:flags并找到所需的手势选项,将其禁用 经过这一切,我两天前写的程序现在可以运行了
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>Play Me</title>
<style>
body {background-color:lightgrey}
h1 {color:blue}
p {color:green;font-size:50px}
</style>
</head>
<body onload="playMySound()">
<P>
PLAY ME
<button onclick="playMySound()">sound me</button>
</P>
<br>
<script>
var mySound ;
function playMySound () {
var soundUrl = "http://www.letiketa.com/myapp/sound.ashx?sound=sound1" ;
var mySound = new Audio(soundUrl);
// Actually play the sound
mySound.play() ;
}
</script>