Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wykonanie akcji po załadowaniu wszystkiego
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Szymciosek
Witam,
http://simonmedia.gtbase.net/demo/
po wejściu na ten adres można zauważyć, że za pierwszym razem tekst na samym dole jest ucięty, a już po drugim i kolejnym odświeżeniu wraca na swoje prawidłowe miejsce.

W konsoli można zobaczyć jak wygląda zmiana, wyprowadzam tam wartość height:
Kod
console.log($('#content-container').height());


Na tą chwilę na potrzeby Masonry zrobione jest tak:
Kod
$(document).ready(function() {
                var content = $('#content');
                content.imagesLoaded(function() {
                    content.masonry({
                        itemSelector: '.item',
                        gutterWidth: 55
                    });
                    $('#content-container').height($('#content-container').height() + 30);
                    console.log($('#content-container').height());
                });
});


Lecz niestety to nie działa.

Jak zrobić żeby height zmienił się dopiero po załadowaniu wszystkiego co jest potrzebne? Teraz zauważyłem, że gdzieś się gubi chyba 17px.
tolomei
Witaj.

Zamiast document ready spróbuj:

[JAVASCRIPT] pobierz, plaintext
  1.  
  2. window.onload = function() {
  3. // twój kod...
  4. };
  5.  
[JAVASCRIPT] pobierz, plaintext


Pozdro.
Szymciosek
Wygląda chyba, że działa, ale w sumie wcześniej już znalazłem przykład z zastosowaniem tego.

Dopiero się uczę, możesz mi wyjaśnić czym zajmuje się tak naprawdę:
Kod
$(document).ready...

a czym
Kod
$(window).load...


?
kamil4u
$(document).ready. -> wczytanie tylko DOM-u
$(window).load -> wczytanie całej strony DOM-u, obrazków, JS, CSS itd.

DOM: http://kurs.browsehappy.pl/JavaScript/DOM
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.