No, però ti propongo qualche ottimizzazione per rendere il tutto più dinamico.� complesso far apparire (dopo aver avviato l'audio) al posto del pulsante "play" il pulsante "pausa"?
Qui un esempio testato e funzionante:
Nota che non ho usato id ma solo delle classi che fanno tutto il lavoro.codice:<!DOCTYPE HTML> <html lang="it"> <head> <title>Esempio</title> <meta charset="utf-8"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> <style> .audio-btn { cursor: pointer; } .audio-btn::after { padding-left: .5em; } .audio-btn.audio-play { color: green; } .audio-btn.audio-stop { color: red; } .audio-btn.audio-play::after { content:'Ascolta'; } .audio-btn.audio-stop::after { content:'Interrompi'; } </style> </head> <body> <div class="locandina"> <a href="music-title1.html"><img src="mialocandina1.jpg" alt="mia locandina1"></a> </div> <div class="preview"> <audio class="traccia-audio" src="fileaudio1.mp3" type="audio/mp3"></audio> <i class="agents-btn fa fa-play-circle audio-btn audio-play" aria-hidden="true"></i> </div> <div class="locandina"> <a href="music-title2.html"><img src="mialocandina2.jpg" alt="mia locandina 2"></a> </div> <div class="preview"> <audio class="traccia-audio" src="fileaudio2.mp3" type="audio/mp3"></audio> <i class="agents-btn fa fa-play-circle audio-btn audio-play" aria-hidden="true"></i> </div> <div class="locandina"> <a href="music-title3.html"><img src="mialocandina3.jpg" alt="mia locandina3"></a> </div> <div class="preview"> <audio class="traccia-audio" src="fileaudio3.mp3" type="audio/mp3"></audio> <i class="agents-btn fa fa-play-circle audio-btn audio-play" aria-hidden="true"></i> </div> <script> var elementiPreview = document.querySelectorAll('.preview'); elementiPreview.forEach(function(me){ me.querySelector('.audio-btn').addEventListener('click',function(){ var curPreview = this.parentNode; elementiPreview.forEach(function(preview){ var cls = preview.querySelector('.audio-btn').classList; var trc = preview.querySelector('.traccia-audio') if (preview === curPreview && trc.paused) { cls.remove('fa-play-circle', 'audio-play'); cls.add('fa-stop-circle', 'audio-stop'); trc.play(); } else { cls.remove('fa-stop-circle', 'audio-stop'); cls.add('fa-play-circle', 'audio-play'); trc.pause(); trc.currentTime = 0; } }); }); }); </script> </body> </html>
Per il momento fai qualche prova e se non capisci qualcosa chiedi pure.
Buon proseguimento.

 
			
			
 
					
					
					
						 Rispondi quotando
  Rispondi quotando 
			