Robiłem 3 podejścia do tego projektu, ale formatowanie kodu masz tak [oszczędzę], że za każdym razem mnie odrzuciło po max. minucie. Postaraj się plz jakoś to ogarnąć -- dla samego siebie, niekoniecznie dla nas. Wcinaj bloki o jedno wcięcie -- jeden TAB lub kilka (zawsze tyle samo) spacji. No zobacz, to wycinek z tego kodu -- ten, który sprawia problemy [tabulatory zostały zamienione na spacje]:
function stworz_obiekt_zdjecia(nr, adresy, s, ss) {
var zdj = $(document.createElement('img')).hide();
zdj.attr({ src: adresy[nr] });
zdj.load(function() { alert('a'); //jezeli wylaczymy te linie oraz..
zdj.attr({ rel: nr }).addClass("fota").appendTo($(s[ss]));
zdj.show("clip", { direction: "horizontal", easing: "easeOutCirc" }, 1000, function()
{
if( nr == adresy.length-1) { $('.load').fadeOut('slow'); }
});
}); //.. te linie, to skrypt zadziala poprawnie pod kazda przegladarka, oczywiscie nie bedzie wtedy ladowania zdjec.. jednak wskazuje to na to gdzie znajduje sie problem.
return zdj;
}
WTF? Jedną linijkę wcinasz o 4 spacje, następną o tabulator, a kolejną o... 22 tabulatory (!). Gdzieniegdzie wcięcia brakuje, gdzie indziej brakuje przejść do nowej linii. Nie będę się rozwodził nad zasadami tworzenia czytelnego kodu (nawet podstawowymi w stylu DRY), bo trudno jest je ogarnąć i stosować w praktyce. Wymaga to pewnego doświadczenia. Ale brak porządnego formatowania świadczy chyba tylko o lenistwie autora.
Co śmieszniejsze, u mnie w Operze po kliknięciu na "GALERIA", a potem na "galeria 1", wszystko się chyba wyświetla. Łącznie z alertami w load. Używam najnowszej Opery (10.53).
PS. Sorry za to marudzenie, ale chcę Cię zagonić do zwrócenia uwagi na formatowanie kodu. Piszesz już złożone skrypty, a to oznacza dwie rzeczy. Po pierwsze, brak porządnego formatowania bardziej da Ci się we znaki. Po drugie, nie jesteś już noobem i nie masz taryfy ulgowej, bo na pewno sformatowanie kodu nie jest dla Ciebie ogromnym wyzwaniem.