Tasto play stop musica pagina html

di il
4 risposte

Tasto play stop musica pagina html

Salve, ho il seguente problema. in una pagina di un sito ho inserito il seguente codice:

<head>
<script type="text/javascript">
function playMusic(file) 
{
	if(document.getElementById("music").innerHTML=="")
	{
		document.getElementById("music").innerHTML='<embed src="'+file+'" hidden="true" autostart="true" loop="false">';
		document.getElementById("playstop").value="Stop Sound";
	}
	else 
	{
		document.getElementById("music").innerHTML ="";
		document.getElementById("playstop").value="Play Sound";
	}
}
</script>
</head>
<body>
.....
<span id="music"></span>
<input id="playstop" type="button" value="Play Sound" onClick="playMusic('fileMusica.mp3')">
funziona benissimo: se clicco play parte la musica e il tasto diventa stop, e se clicco su stop si stoppa la musica.

il problema è che vorrei che la musica partisse in automatico!

4 Risposte

  • Re: Tasto play stop musica pagina html

    Ciao,
    prova con l'aggiunta di un listener che lanci la funzione di avvio della musica appena il documento è stato caricato, qualcosa del tipo
    document.addEventListener('DOMContentLoaded', function() {
       // qui il codice
    }, false);
  • Re: Tasto play stop musica pagina html

    Quindi una cosa del genere
    
    <script type="text/javascript">
    function playMusic(file) 
    {
       if(document.getElementById("music").innerHTML=="")
       {
          document.getElementById("music").innerHTML='<embed src="'+file+'" hidden="true" autostart="true" loop="false">';
          document.getElementById("playstop").value="Stop Sound";
       }
       else 
       {
          document.getElementById("music").innerHTML ="";
          document.getElementById("playstop").value="Play Sound";
       }
    document.addEventListener('DOMContentLoaded', function() {
       document.getElementById("music").innerHTML='<embed src="'+file+'" hidden="true" autostart="true" loop="false">';
          document.getElementById("playstop").value="Stop Sound";
    }, false);
    }
    </script>
    
  • Re: Tasto play stop musica pagina html

    Il listener deve essere fuori dalla funzione altrimenti non può partire in automatico. Forse è più semplice se richiami la funzione di play music direttamente dal onload del body.
    <body onload="playMusic()">
  • Re: Tasto play stop musica pagina html

    Comunque tieni presente che l'avvio automatico di musica e filmati al caricamento del sito non è molto ben visto dagli utenti, oltre a rendere il sito poco accessibile.
    Quindi, a meno che tu non ritenga indispensabile farla partire in automatico, ti consiglio di evitare.

    ciao
Devi accedere o registrarti per scrivere nel forum
4 risposte