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

Ładowanie zdjęć

Object Storage Arubacloud
0 głosów
137 wizyt
pytanie zadane 26 maja 2020 w JavaScript przez susanel Nowicjusz (160 p.)
zmienione kategorie 26 maja 2020 przez ScriptyChris

Cześć!

Mam pewien problem natury wizualnej:

Stworzyłam grę - memory. Po kliknięciu na kartę memory odkrywa się ona. 

Wszystko działa sprawnie oprócz małego niuansu - karta nagle znika (widać tło) i pojawia się. Po ponownym odkryciu tej samej karty, ładnie się odkrywa. Podobnie mam z muzyką - nie działa przy 1 grze, podczas 2 rozgrywki uruchamia się poprawnie.

Czy ktos wie jak to naprawić?

https://susanel92.github.io/harry-potter-memory-game/

3 odpowiedzi

+2 głosów
odpowiedź 27 maja 2020 przez niezalogowany

Obrazki: Problem polega na tym, że tło ściągasz dopiero w momencie kliknięcia. Musisz pobrać grafiki odpowiednio wcześniej. Jest na to kilka sposobów -> https://stackoverflow.com/a/14390213/7218066 (btw, zmień rozszerzenie na .jpg i przepuść to wszystko przez jakiś https://tinypng.com/ - rozmiar plików zmniejszy się kilkukrotnie)

Muzyka: U mnie działa (Chrome 81, Win 10)

+1 głos
odpowiedź 27 maja 2020 przez Greeenone Pasjonat (16,100 p.)
Niestety nie mam laptopa przy sobie aby sprawdzic ale z opisu wnioskuje, ze obrazki/assety pobieraja sie w trakcie gry. Powinien byc jakis preloader ktory znika gdy wszystkie obrazki/assety zostana pobrane. Podobnie pewnie jest z muzyka. Pobiera sie on w trakcie pierwszej rozgrywki i po odpaleniu drugiej zaczyna grac
0 głosów
odpowiedź 27 maja 2020 przez Greeenone Pasjonat (16,100 p.)

Teraz sprawdziłem co do dźwięku. Problem polega na tym, że skrypt odpala muzykę przed interakcją użytkownika ze stroną i jest ona blokowana (Zaoszczędzenie transferu, zablokowanie muzyki w otwartych kartach etc), Zostało to wprowadzone nie dawno. 

https://developers.google.com/web/updates/2017/09/autoplay-policy-changes

main.js:32 Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first. https://goo.gl/xX8pDD

 

Podobne pytania

0 głosów
0 odpowiedzi 195 wizyt
0 głosów
0 odpowiedzi 1,002 wizyt
pytanie zadane 24 lipca 2018 w JavaScript przez WrdSaint Nowicjusz (120 p.)
+1 głos
0 odpowiedzi 158 wizyt
pytanie zadane 21 maja 2021 w JavaScript przez Author[] Gaduła (3,130 p.)

92,690 zapytań

141,603 odpowiedzi

320,100 komentarzy

62,051 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...