![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 23.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam taki problem: Mam listę nieuporządkowaną w html taką jak poniżej. W jquery napisałem kod, który ładuje obrazek (o nazwie "nazwa_klasy.svg") jako tło do każdego wiersza listy a potem poprzez najechanie myszką przełącza na drugi obrazek ("nazwa_klasy-hover.svg") czyli ten sam obrazek (ikonę) z innym kolorem wypełnienia. Problem polega na tym, że przy każdym najechaniu myszką i każdym zjechaniu ładowany jest od nowa obrazek co po pierwsze nie wygląda dobrze bo pomiędzy jednym a drugim załadowaniem obrazka jest białe mignięcie a po drugie zżera niepotrzebnie transfer.
No i mam odpowiednie ostylowanie w css. Najlepszym rozwiązaniem byłoby użycie w css'ie :hover {fill:red;} ale niestety nie działa to do obrazków svg ładowanych zewnętrznie (działa tylko wtedy gdy svg jest dodawane jako wewnętrzny kod do pliku html). Ma ktoś pomysł dlaczego raz załadowany obrazek nie zostaje zapamiętany tylko jest od nowa ładowany przy każdej akcji? ps. dla obrazków innych niż .svg (np. png) problem też występuje. Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 75 Pomógł: 20 Dołączył: 13.02.2015 Ostrzeżenie: (0%) ![]() ![]() |
Czytając ten temat na myśl przyszło mi tylko jedno hasło: sprite css.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 4 Dołączył: 7.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Tak jak mój przedmówca polecam Ci sprite ponieważ twoje obecne rozwiązanie generuje więcej zapytań co przy większych projektach ma spore znaczenie.
Ps. Pamiętaj że zawartość SVG też można wrzucić bądź edytować stąd nie widzę potrzeby odwoływania się do innego SVG który ma inną wartość np. fill="FF0000" |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 137 Pomógł: 2 Dołączył: 2.07.2007 Skąd: Ostrzeszów Ostrzeżenie: (0%) ![]() ![]() |
Tutaj masz znaną stronę do generowania spritów:
http://www.pl.spritegen.website-performance.org/ |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 07:17 |