Salve,
il modo corretto per gestire l'audio con HTML è questo:
Codice HTML:
<audio id="beep">
<source src="Beep.mp3" type="audio/mpeg">
Il browser non supporta audio element.
</htnl>
Inoltre, per poter funzinare correttamente, il codice js va messo sotto alla parte HTML che gestisce l'audio.
In head ci mancano invece il titolo e il minimo dei meta tag ormai in uso con HTML5. Che l'aspetto grafico abbia uno sitle retro ci può stare, ma la struttura HTML dovrebbe essere aggiornata e completa.
Ho sistemato un po' il codice:
Codice HTML:
<!DOCTYPE html>
<html lang="it">
<head>
<title> </title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description"">
</head>
<body>
<table border="3" width="510" height="400" bordercolor="red" id="tavola1" bgcolor="blue">
<tr>
<td>
<P Style="position:absolute; left:10px; top:20px;" Id="para1" ><img src="bullet1.gif"></P>
</td>
</tr>
</table>
<audio id="beep">
<source src="Beep.mp3" type="audio/mpeg">
Il browser non supporta audio element.
</audio>
<script>
var sinistra=11;
var alto=11;
var direzione_s =false;
var direzione_a =false;
var sound = document.getElementById("beep");
function beep1(beep){
sound.play();
}
function pause(beep){
sound.pause();
}
function avvia(){
window.setInterval("muovi()",5);
}
function muovi(){
var paragrafo=document.getElementById("tavola1");
if(direzione_s == false){
sinistra++;
window.setTimeout("pause()",3000);
if(sinistra == 500){direzione_s=true; beep1('beep'); paragrafo.style.background="magenta";}
}else{
sinistra--;
window.setTimeout("pause()",3000);
if(sinistra == 10){direzione_s=false; beep1('beep'); paragrafo.style.backgroundColor="blue";}
}
if(direzione_a == false){
alto++;
window.setTimeout("pause()",3000);
if(alto == 380){direzione_a=true; beep1('beep'); paragrafo.style.backgroundColor="green";}
}else{
alto--;
window.setTimeout("pause()",3000);
if(alto == 0){direzione_a=false; beep1('beep'); paragrafo.style.backgroundColor="cyan";}
}
para1.style.left=sinistra+"px";
para1.style.top=alto+"px";
}
avvia();
</script>
</body>
</html>
A me risulta funzionare così.
Cordiali saluti.