![]() |
![]() |
-lukasamd- |
![]()
Post
#1
|
Goście ![]() |
Witam,
chciałbym sobie na forum dodać skrypt, który automatycznie pomniejszałby zbyt duże obrazki i zamieniał je na linki (tzn. dodanie stylu max-width i max-height, oraz linku). Mam oto coś takiego co używa jquery: Kod $(document).ready(function() { $("img").each(function(index) { var img = $(this); alert(img.attr("width") + 'x' + img.attr("height")); if ( img.attr("width") > 550) { $(img).replaceWith('aaaa'); } }); }); Niestety, nie działa to zbyt logicznie. Po pierwsze, w FF czy Operze zwraca dziwne wymiary - dla obrazka 1600x1000px pokazało 43x19px. Mimo to zamienia na napis. W Chrome pokazuje 0x0 i nie zmienia... Wydaje mi się, że w chwili wywołania alertu nie cały jest wczytany, stąd taka dziwna informacja. Potem jest już więcej informacji = zmniejsza. No ale jak zrobić to tak, aby naprawdę działało, do tego również w Chrome? Czy w ogóle taki sposób pobierania wymiarów ma tu sens? |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Cytat Po pierwsze, w FF czy Operze zwraca dziwne wymiary - dla obrazka 1600x1000px pokazało 43x19px. Mimo to zamienia na napis. Musisz się jeszcze podpiąć pod zdarzenie .load dla obrazka, aby odczytać jego właściwe wymiary. 43 na 19 jest to rozmiar małek ikonki pokazującej, że obrazek jeszcze się nie załadował. Dlaczego tak się dzieje? .ready jest wywoływane kiedy cały HTML zostanie zassany a nie jak całą strona zostanie załadowana (wraz z obrazkami) -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
Ten post edytował zegarek84 28.11.2010, 19:36:35 -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 11:57 |