Maciek316
19.03.2017, 19:16:37
Witam, stosuje biblioteke
https://daneden.github.io/animate.css/i chce stworzyc plynne przejscie pomiedzy jednym zdjeciem a drugim.
W chwili obecnej robie to za pomoca js'a i przez ulamek sekundy przejscie nie jest plynne.
$$('#story-image').html("<img src='img/story/"+wygrane_uzytkownik+".png' width='100%' class='animated pulse'>");
W ten sposob wczytuje kolejne zdjecie.
Licze na wasza pomoc
trueblue
19.03.2017, 20:23:22
Najpierw poczekaj aż się obrazek wczytaj, wtedy dodawaj mu klasy.
Animacja startuje w momencie kiedy element (w tym przypadku obrazek) jest dodany do drzewa DOM, a nie kiedy się załaduje.
Maciek316
19.03.2017, 20:54:36
Tak, to jedna sprawa, ale druga jest taka ze nawet jesli obrazki sa juz zaladowane, w czasie ich podmiany nastepuje na ulamek sekundy ich brak.
trueblue
19.03.2017, 21:12:11
Pokaż więc kod z preloaderem.
Maciek316
19.03.2017, 21:52:19
Chodzi o to ze $().html podmienia dany element, ale pomiedzy ta podmiana element znika zeby mogl sie pojawic kolejny, chce to zniwelowac bo moj tekst pod obrazkami na ulamek sekundy pojawia sie w miejscu gdzie bedzie kolejny obrazek po czym spada na dol(tekst). To naprawde krotki moment, aczkolwiek wkurzajacy.
Spowodowane jest to tym, ze obrazek nie ma na stale przydzielonych parametrow width i height, ale ze jest to strona mobilna to nie moge ich sztywno przydzielic.
trueblue
19.03.2017, 22:05:19
Jeszcze raz więc.
Klasy animated i pulse powinieneś dodać po załadowaniu obrazka. Użycie metody html to tylko dodanie obrazka do drzewa DOM. Po dodaniu powinieneś poczekać na załadowanie i wtedy dodać powyższe klasy.
Maciek316
19.03.2017, 22:07:06
Tak tez zrobilem:
$$('#story-image').html("<img src='img/story/"+wygrane_uzytkownik+".png' width='100%' class='test'>");
$$('.test').addClass('animated fadeIn');
Nie rozwiazuje to mojego problemu :/
trueblue
19.03.2017, 22:10:17
Maciek316
19.03.2017, 22:20:09
Umiem uzywac google

Nawet jesli podmieniam obrazek na ten sam, to dzieje sie to samo, wiec to nie jest kwestia preloadingu.
trueblue
19.03.2017, 22:25:27
Wrzuć przykład na jsfiddle.net
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.