Android のブラウザで JavaScript を使用して特定の時間にオーディオ クリップを開始したいと考えています。HTML5 を使用した次のコードは私のラップトップで正常に動作し、カウントダウンは Android でも動作し、手動でクリップ (4.1 ジェリー ビーン) を開始できます。したがって、コーデックはサポートされており、javascript 自体はラップトップ (Linux) の firefox と chrome では問題ないはずですが、android では何か問題があります: audio.play() はオーディオを開始しません。しかし、audio.play() を呼び出すボタンを作成すると、機能します。
コードは次のとおりです。
<html>
<head>
<title>countdown and play</title>
<script type="text/javascript">
deadline = new Date(2012,7,16,1,8,00);
function countdown()
{
var now = new Date();
if (deadline-now <= 0){
var audio = document.getElementsByTagName("audio")[0];
audio.play();
document.getElementById("countdown").innerHTML="time's up!";
} else {
document.getElementById("countdown").innerHTML=Math.ceil((deadline-now)/60000)+" minute(s) to go!";
t=setTimeout(function(){countdown()},500);
}
}
</script>
</head>
<body>
<p id="countdown">starting countdown</p>
<audio src="audio.ogg" preload="auto" controls>
<p>Your browser does not support the audio element </p>
</audio>
<script type="text/javascript">
var audio = document.getElementsByTagName("audio")[0];
audio.load();
audio.onloadeddata = countdown();
</script>
</body>
</html>
何か案は?前もって感謝します