-
Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!n
x01.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-01.news
.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail
From: Peter May <p...@p...fm>
Newsgroups: pl.comp.www
Subject: Re: Parsowanie i renderowanie - ile razy
Date: Tue, 23 Feb 2010 12:38:03 +0100
Organization: TP - http://www.tp.pl/
Lines: 58
Message-ID: <hm0fca$t6a$1@nemesis.news.neostrada.pl>
References: <hlu0cs$igc$1@atlantis.news.neostrada.pl>
<hlu12i$67s$1@mx1.internetia.pl> <hlu1nt$4kc$1@nemesis.news.neostrada.pl>
<o...@a...local>
NNTP-Posting-Host: uw210.internetdsl.tpnet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: nemesis.news.neostrada.pl 1266925770 29898 80.55.152.210 (23 Feb 2010
11:49:30 GMT)
X-Complaints-To: u...@n...neostrada.pl
NNTP-Posting-Date: Tue, 23 Feb 2010 11:49:30 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.1.7) Gecko/20100111
Lightning/1.0b1 Thunderbird/3.0.1
In-Reply-To: <o...@a...local>
Xref: news-archive.icm.edu.pl pl.comp.www:395050
[ ukryj nagłówki ]W dniu 2010-02-22 22:33, porneL pisze:
> On Mon, 22 Feb 2010 13:33:03 -0000, Peter May <p...@p...fm> wrote:
>
>>>> Gdzieś kiedyś czytałem, że zawartość wysłana z serwera jako text/html
>>>> jest przeglądarkę obrabiana dwukrotnie: parsowanie, potem renderowanie.
>>>
>>> Ale renderowanie na podstawie sparsowanego.
>>
>> Parsowanie zawartości wysłanej jako text/html właśnie mogę sobie
>> wyobrażać tak. Choćby w celu możliwie jak najlepszego poprawienia
>> błędnego kodu. Przeglądarka próbuje coś tam naprawić i potem to
>> wyświetlić.
>>
>> Natomiast w trybie xml-owym nawet najmniejszy błąd w składni daje po
>> prostu błąd i przerwę w renderowaniu dokumentu.
>>
>> No i szukam jakieś potwierdzenia lub zaprzeczenia tej tezy.
>
> W obu przypadkach kod jest pobierany raz, parsowany do DOM, a potem na
> podstawie DOM (kiedy to już nie ma śladu po źródle i różnicach
> składniowych) renderowany tyle razy ile trzeba.
>
> W starych Gecko była niedoróbka, która uniemożliwiała wyświetlanie
> progresywne, więc było mniej renderowania, kosztem opóźnienia w
> wyświetlaniu strony. We współczesnych Geckonach text/html i XML są
> traktowane prawie tak samo.
>
> Duże różnice w text/html vs XML to poplątanie parsera z silnikiem
> JavaScript. W trybie XML skrypty nie blokują parsera. W text/html
> działanie document.write jest zależne od aktualnego stanu parsera, przez
> co parser jest zależny od skryptów i musi wstrzymywać parsowanie strony
> przy każdym napotkanym skrypcie (jeśli skrypt jest zewnętrzny, to
> wszystko staje dęba póki skrypt się nie ściągnie i nie skończy wykonywać).
Co znaczy "W trybie XML skrypty nie blokują parsera"? Jeśli ładowane są
skrypty po kolei, to każdy wykonuje się zaraz po załadowaniu? A co z
tzw. blokowaniem ładowania się skryptów? Chodzi mi o sytuację, kiedy
przeglądarka ładuje skrypt->wykonuje go i tak do następnego.
Blokowanie skryptów, a w zasadzie ich ładowania, można pominąć m.in.
przez dynamiczne ich dodawanie. Jest, z resztą, wiele sposobów.
> Niektóre przeglądarki (Safari 4, IE8, Fx 3.6) podczas czekania na skrypt
> z sieci parsują stronę drugi raz (bez skryptów), żeby odkryć i zacząć
> ładować wszystkie skrypty i obrazki dalej w dokumencie.
>
> Text/html może być parsowany prawie-dwukrotnie w bardzo szczególnym
> przypadku - gdy zapomnisz zamknąć <script>, <textarea> lub komentarz.
> Wtedy przeglądarka dojdzie do końca dokumentu, kapnie się, że
> niedomknięty tag "pożarł" cały dokument, poprawi go i zacznie jeszcze raz.
> Natomiast w walidującym się text/html nie dochodzi do poprawiania
> błędów, więc nie ponosi się tego kosztów.
Dziękuję. To wiele wyjaśnia.
--
Peter
Następne wpisy z tego wątku
- 23.02.10 13:05 Paweł Piskorz
- 23.02.10 13:38 Peter May
- 23.02.10 15:44 Paweł Piskorz
- 23.02.10 16:06 Peter May
- 28.02.10 09:45 Łukasz Lech
Najnowsze wątki z tej grupy
- Jakie znacie działające serwery grup dyskusyjnych?
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
- Czy istnieje jakiś emulator przeglądarek pod Mac'a?
- taka sama konfiguracja dla localhost i produkcji
Najnowsze wątki
- 2024-10-04 Warszawa => QA Engineer <=
- 2024-10-04 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-10-04 Warszawa => Senior PHP Laravel Developer (e-commerce) <=
- 2024-10-04 Warszawa => Data Scientist / Data Engineer (predictive modelling) <=
- 2024-10-03 Nieparzyste dmuchanie
- 2024-10-03 Prognozowanie zużycia energii przez PGE?
- 2024-10-03 Re: Drugi ekran na Androidzie
- 2024-10-03 sprawiedliwosc nierychliwa
- 2024-10-03 zloto
- 2024-10-03 Odkurzacz mnie bije :(
- 2024-10-03 Gdańsk => Technical Lead ( (Java Background)) <=
- 2024-10-03 Warszawa => Mid IT Recruiter <=
- 2024-10-03 Olsztyn => Sales Specialist <=
- 2024-10-03 Leszczyna nie zna prawa?
- 2024-10-03 Warszawa => OpenText ECM Specialist <=