• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[jquery, javascript] Dźwięk podczas kliknięcia przycisku

0 głosów
342 wizyt
pytanie zadane 23 sierpnia 2018 w JavaScript przez marcin_w Gaduła (3,190 p.)

Cześć, próbuję dodać kilka smaczków wzorując się na 5 odcinku javascript Mirosława Zelenta.

Otóż chcę, aby po kliknięciu w przycisk nastąpił efekt dźwiękowy, a zaraz po nim ponowne wczytanie strony (rozpoczęcie gry od nowa).

Próbowałem już wielu rozwiązań, ale żadne z nich nie pomogło. Proszę o jakieś wskazówki.


Z góry dziękuję za pomoc.

var retryClick = new Audio("164641__adam-n__pen-click-1.wav");

/*
.
.
.
*/
if(pairsLeft == 0) {		
		$('.board').html('<h1>You win!<br>Done in '+ turnCounter +' turns</h1><br><div id="retry">Retry</div>');
		
		/* "Pen_click_1.wav by Adam_N/freesound.org" */
		$('#retry').click(function() { 
								
			retryClick.play();
			location.reload();			
		})		
	}

 

1 odpowiedź

+1 głos
odpowiedź 23 sierpnia 2018 przez StOcK Mądrala (6,100 p.)
wybrane 23 sierpnia 2018 przez marcin_w
 
Najlepsza

Za wiele nie mogę wywnioskować, bo niewiele napisałeś o problemie. Twój kod powinien działać, więc nie wiem w czym problem. Domyślam się tylko, że po rozpoczęciu odtwarzania dźwięku strona jest od razu przeładowywana i albo w ogóle nie słychać dźwięku, albo jest on ucinany w krótkim czasie.

Moja propozycja, skorzystaj z eventu onended.

retryClick.onended = function() {
    location.reload();
};

 

2
komentarz 23 sierpnia 2018 przez Comandeer Guru (571,400 p.)
edycja 23 sierpnia 2018 przez Comandeer

Taka tylko uwaga: to zdarzenie nazywa się ended. Przedrostek on… oznacza listener. No i warto przypiąć mimo wszystko przez addEventListener, które jest już standardową metodą obsługi zdarzeń.

1
komentarz 23 sierpnia 2018 przez StOcK Mądrala (6,100 p.)

@Comandeer, literówka "addEventListener"

komentarz 23 sierpnia 2018 przez marcin_w Gaduła (3,190 p.)
edycja 23 sierpnia 2018 przez marcin_w

@StOcK, w momencie kiedy już znalazłem wszystkie pary, to pojawia się podsumowanie wraz z przyciskiem retry, i po jego wciśnięciu ma nastąpić efekt dźwiękowy + restart gry.


O to mi chodziło.

Zastosowałem podany przez ciebie event i działa. Propozycja Comandeer'a również. 
Dzięki za pomoc. 

Podobne pytania

0 głosów
0 odpowiedzi 38 wizyt
0 głosów
1 odpowiedź 95 wizyt
0 głosów
1 odpowiedź 381 wizyt

88,701 zapytań

137,308 odpowiedzi

306,748 komentarzy

58,894 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...