タイトル参照。オーディオ ファイルを 300 ミリ秒ごとに 4 回連続して再生しようとしています。ただし、クリップは 300 ミリ秒より長いため、クリップの再生が完了するまで、新しい再生要求は無視されます。300ms ごとにクリップを停止して再開する方法を探しています。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
</head>
<body>
<audio id="note0440"><source src="0440.a4.wav" type="audio/wav"></audio>
<script type="text/javascript">
function playNote (loop) {
var n = document.getElementById("note0440")
if (loop > 4)
return
n.volume = 0.05
// n.currentTime = 0
n.pause()
n.play()
setTimeout("playNote("+(loop + 1)+")", 300)
}
</script>
<div style="margin:50px"><button onclick="playNote(1)">Play Note</button></div>
</body>
</html>
これは動作しません。使用の有無にかかわらず、停止および再始動しませんn.currentTime = 0
。
テスト用に必要な場合は、次の WAV ファイルを参照してください: http://popstrip.com/misc/0440.a4.wav