Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][HTML]Play/Pause Audio - problem, problem po kliknięciu play i brak zmiany nazwy button na play
ReBeLs513
post
Post #1





Grupa: Zarejestrowani
Postów: 233
Pomógł: 0
Dołączył: 14.03.2010
Skąd: Dessau

Ostrzeżenie: (0%)
-----


cześć.

Na mojej stronie wstawiłem sobie kod na odtwarzanie więcej jak jednego pliku. Ważne było, aby podczas przełączenia dźwięki nie nachodziły na siebie i tojest super.

Ale chciałem zrobić też tak, aby ten sam przycisk robił play i pause i zmieniał odpowiednio nazwę. Tzn. jak audio gra to przycisk zmieni napis z play na pause i na odwrót.
Wstawiłem

  1. pause[button].addEventListener('click', () => {
  2. main_player.pause()
  3. pause[button].innerHTML = "play";
  4. })

po "main_player.play()
})"
ale po kliknięciu na play muszę jeszcze kliknąć na play w odtwarzaczu. I button w ogóle nie zmienia nazwy na play i nie pauzuje.

Z kolei jak dodam tylko

  1. pause[button].addEventListener('click', () => {
  2. main_player.pause()

to owszem, musze ponownie kliknac play w odtwarzaczu ale pauza działa.

Niżej cały kod bez funkcji pause() ze zmianą nazwy na pause:

  1. <audio src="/demo/03. Adel Tawil - Tu m'appelles (feat. PEACHY).mp3" type="audio/mp3" class='audios'></audio>
  2. <button class='fas fa-play'>play</button>
  3.  
  4. <audio src="/demo/03. 24kGoldn - Mood (feat. iann dior).mp3" type="audio/mp3" class='audios'></audio>
  5. <button class='fas fa-play'>play</button>
  6. <hr />
  7.  
  8. <audio class='main-audio' controls>
  9. <source src="#" type="audio/mp3">
  10. </audio>
  11.  
  12.  
  13. const audios_with_src = document.querySelectorAll('.audios')
  14. const play = document.querySelectorAll('.fa-play')
  15. const pause = document.querySelectorAll('.fa-play')
  16. const main_player = document.querySelector('.main-audio')
  17.  
  18. for(let button =0; button < audios_with_src.length; button++) {
  19. play[button].addEventListener('click', (e) => {
  20. main_player.src = audios_with_src[button].src;
  21. play[button].innerHTML = "pause";
  22. main_player.play()
  23. })
  24.  
  25.  
  26.  
  27. }
  28.  


Ten post edytował ReBeLs513 30.01.2022, 20:25:33
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.09.2025 - 20:47