Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
[css][WordPress] display:hide
#1
Moje pytanie jest następujące.
Czy zawartość div'a z parametrem
Kod:
display:none;
jest ładowana przez przeglądarkę do pamięci?
Konkretnie: czy przeglądarka załaduje do pamięci obrazki znajdujące się w div'ie wykorzystując jakże cenny dla mnie Bandwidth serwera i wydłużając czas ładowania strony?

Jeśli tak właśnie jest, mam kolejne pytanie. Jest jakiś sposób by za pomocą jQuery ładować do konkretnych div'ów dokumenty php?
Odpowiedz
#2
Z tego co wiem, to zależy od przeglądarki. FF ich nie ładuje, IE ładuje.
Odpowiedz
#3
visibility:hidden powinno pomóc
Odpowiedz
#4
Z ciekawości poszperałem trochę w necie i z tego co się dowiedziałem, to visibility też nie jest zbytnim rozwiązaniem. W sumie jest to dość logiczne, że skoro znajduje się w kodzie taka deklaracja, to mimo wszystko jest wczytywana, bez względu na wartość określającą widoczność elementu. Dzięki temu element jest gotowy do wyświetlenia w każdej chwili.
Odpowiedz
#5
Z tego co zauważyłem sam, opera mobile na Androidzie nie ładuje tej treści. Po kliknięciu w link wywołujący tą treść z diva widać, że obrazki są dopiero doczytywane. Z kolei na PC w przypadku Chrome i FF wydaje się, że są ładowane już przy wejściu na stronę, po kliknięciu w link, są od razu dostępne. Po drugie mimo, że po odświeżeniu, kiedy strona wyświetla się już w pełni, przeglądarka nadal coś tam przez chwilkę ładuje. (czyściłem za każdym razem pamięć podręczną)

Szukam jakiegoś sposobu żeby tego uniknąć. Mam zintegrowaną galerię z szablonem Wordpressa. Obrazki muszę wywoływać za pomocą php
Kod:
<img scr="<?php bloginfo('template_directory'); ?>/obrazek.jpg">
ale kiedy umieszczę listę obrazków w osobnym pliku php i przywołam jego zawartość do div'a w pliku index.php
Kod:
function zaladuj(url) {
    $('#content').load(url, "",
        function(responseText, textStatus, XMLHttpRequest) {
            if(textStatus == 'error') {
                $('#content').html('<p>Zapraszam wkrótce.</p>');
            }
        }
    );
  
}
w div'ie nic się nie pojawia. Wpadłem więc na to, żeby zawartość umieścić w divie z parametrem display:hidden a następnie skrypt jQuery zastosować do załadowania teści tego diva onclick="zaladuj('#hidden #galeria')" do #content.

Macie jakieś propozycje lepszego rozwiązania? Raczkuję jeśli chodzi o JS. Myślałem też żeby wykorzystać wordpressowe
<base href="http://myexample.com" /> w index.php i zawartość galerii wywoływać z pliku HTML. Ktoś ma z tym jakieś doświadczenie?

EDIT

mimo użycia <base href="http://localhost/blog/wp-content/themes/Portfolio" />, wordpress nie wyświetla nawet logo znajdującego się w tej lokalizacji...
Poddaję się, okazało się, że IE nie wczytuje zawartości ukrytych div'ów do #content, wyświetla tylko komunikat z drugiej części skryptu
Kod:
if(textStatus == 'error') {
                $('#content').html('<p>Zapraszam wkrótce.</p>')
Bez problemów radził sobie przy tym samym skrypcie z ładowaniem zawartości z plików html w przypadku statycznej strony...
Zaczynam rozumieć głęboko zakorzenioną niechęć do IE wśród developerów...

Chyba po prostu oprę galerię o strony wordpressa...
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Problem z wyglądem posta - wordpress Simisti 0 1,966 29-05-2017, 01:23
Ostatni post: Simisti
  wordpress-zabezpieczenia Alameida 3 4,091 29-04-2016, 18:30
Ostatni post: Masterka5
Question Usuniecie tagów z głownej Wordpress unreal34 1 2,750 17-02-2015, 15:27
Ostatni post: Kartofelek
  Rozwijana lista podkategorii - Wordpress mat2224 0 1,755 07-05-2013, 21:49
Ostatni post: mat2224
  Wordpress Multisite na Win 2008 serwer i Apache marutek 0 1,657 10-03-2013, 22:25
Ostatni post: marutek

Skocz do:


Użytkownicy przeglądający ten wątek:
Sponsorzy i przyjaciele
SeoHost.pl