Randomowe wykonywanie skryptu

0

Jakiś czas temu zakładałem tutaj temat w zawiązku z dziwnym zachowaniem divów w galerii. Udało mi się rozwiązać ten problem po przez ustalenie (przez jQ) stałej wysokości każdego divu. Problem jednak pojawia się z wykonywaniem tego skryptu. Przy jednym załadowaniu strony wszystko działa, przy innym obrazki kompletnie nie zgrywają się wysokością i nie wiem co jest tego powodem - kilka przeładowań i znów wszystko działa.

http://nianiaania.pl/galeria/

Dla mniej aktywnych screen błędnego działania: 854e9995b6.png

1

Cóż, to nie było rozwiązanie problemu, tylko brzydki hack ;) Brzydkie hacki mają efekty uboczne i oto jeden z nich.

Drugim jest to, że niepoprawny jest stosunek wymiarów i galeria ukazuje się spłaszczona.

Prawdopodobnym powodem problemów opisanych przez Ciebie jest przypięcie kodu do document.ready, a nie do windows.ready - pierwsze wykonuje się, gdy kod HTML strony jest załadowany i przygotowany, drugie gdy cała treść (z obrazkami) jest załadowana. W przypadku document.ready jest szansa, że skrypt odczyta wymiary obrazka jako 0, ponieważ obrazek jeszcze nie zaczął się ładować.

Ja bym jednak poszukał sensownego rozwiązania problemu, a nie hacka ;)

0

Zmieniłem na window i dalej nic... :/ Faktycznie można by poszukać jakiegoś sensownego rozwiązania, ale termin gonił.

1

Hej,

Tak na szybko szukałem rozwiązania i trafiłem na coś takiego:

$(document).ready(function() {
 // executes when HTML-Document is loaded and DOM is ready
 alert("document is ready");
});


$(window).load(function() {
 // executes when complete page is fully loaded, including all frames, objects and images
 alert("window is loaded");
});

Źródło
Myślę że powinno pomóc ;)

1

Fakt, windows ma load, a nie ready ... Sorry

1 użytkowników online, w tym zalogowanych: 0, gości: 1