diff options
author | Florian Merz <me@fiji-flo.de> | 2021-02-11 14:45:12 +0100 |
---|---|---|
committer | Florian Merz <me@fiji-flo.de> | 2021-02-11 14:45:12 +0100 |
commit | cb9e359a51c3249d8f5157db69d43fd413ddeda6 (patch) | |
tree | ae3040d626c3b5717da5bda2af9f0a9ff9bd389f /files/ca/glossary/speculative_parsing | |
parent | 8260a606c143e6b55a467edf017a56bdcd6cba7e (diff) | |
download | translated-content-cb9e359a51c3249d8f5157db69d43fd413ddeda6.tar.gz translated-content-cb9e359a51c3249d8f5157db69d43fd413ddeda6.tar.bz2 translated-content-cb9e359a51c3249d8f5157db69d43fd413ddeda6.zip |
unslug ca: move
Diffstat (limited to 'files/ca/glossary/speculative_parsing')
-rw-r--r-- | files/ca/glossary/speculative_parsing/index.html | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/files/ca/glossary/speculative_parsing/index.html b/files/ca/glossary/speculative_parsing/index.html new file mode 100644 index 0000000000..df48dec4e3 --- /dev/null +++ b/files/ca/glossary/speculative_parsing/index.html @@ -0,0 +1,29 @@ +--- +title: Optimizing your pages for speculative parsing +slug: Web/HTML/Optimizing_your_pages_for_speculative_parsing +translation_of: Glossary/speculative_parsing +--- +<p><span id="result_box" lang="ca"><span class="alt-edited">Tradicionalment en els navegadors, </span></span>el analitzador sintàctic<span lang="ca"><span class="alt-edited"> d'HTML s'executa en el fil principal i s'ha bloquejat després d'una etiqueta <code></script></code> fins que l'script s'ha recuperat de la xarxa i s'executat.</span></span> El analitzador sintàctic d'HTML en Firefox 4 i versions posteriors dóna suport a l'anàlisi especulativa fora del fil principal. A continuació s'analitza mentre que els scripts estan sent descarregats i s'executen. Com en Firefox 3.5 i 3.6, l'analitzador sintàctic d'HTML comença càrregues especulatives per als scripts, fulles d'estil i imatges que troba per davant en la seqüència. No obstant això, en Firefox 4 i posterior l'analitzador sintàctic d'HTML també executa l'algorisme de construcció de l'arbre HTML especulativament. <span id="result_box" lang="ca"><span>L'avantatge</span> <span>és que</span> <span>quan una</span> <span>especulació</span> <span>té</span> <span>èxit, no</span> <span>hi ha</span> <span>necessitat</span> <span>de reanàlisi</span> <span>de la</span> <span>part de l'arxiu</span> <span>d'entrada </span> <span>ja que </span></span><span lang="ca"><span>va ser</span> <span>analitzat</span> <span>a la recerca de</span> <span>scripts</span><span>, fulls</span> <span>d'estil</span> <span>i imatges</span></span>. L'inconvenient és que hi ha més feina perduda quan l'especulació falla.</p> + +<p>Aquest document pot ajudar evitar que aquest tipus de coses que fan que l'especulació falli i alenteixen la càrrega de la pàgina.</p> + +<h2 id="Fent_càrregues_especulatives_successives">Fent càrregues especulatives successives</h2> + +<p>Només hi ha una regla per fer càrregues especulatives de scripts vinculats, fulls d'estil i imatges successives:</p> + +<ul> + <li>Si s'utilitza un element <code><base></code> per anul·lar l'URI base de la pàgina, posar l'element de la part non-scripted del document. No ho afegiu a través de <code>document.write()</code> or <code>document.createElement()</code>.</li> +</ul> + +<h2 id="Evitant_perdre_la_sortida_del_constructor_d'arbre">Evitant perdre la sortida del constructor d'arbre</h2> + +<p>El constructor d'arbre especulatiu falla quan <code>document.write()</code> canvia l'estat del constructor d'arbre, de tal manera que l'estat especulatiu després de la etiqueta <code></script></code> ja no se sosté quan ha estat analitzat tot el contingut inserit per <code>document.write()</code>.<span id="result_box" lang="ca"><span> No obstant això</span><span>, només els</span> <span>usos</span> <span>inusuals</span> <span>de</span> <code><span>document.write</span><span>(</span><span>)</span></code> <span>causen</span> <span>problemes.</span> <span>Aquestes</span> <span>són</span> <span>les</span> <span>coses</span> <span>que cal evitar</span><span>:</span></span></p> + +<ul> + <li><span id="result_box" lang="ca"><span>No escriviu</span> <span>arbres</span> <span>desequilibrats</span></span>. <code><script>document.write("<div>");</script></code> és incorrecta. <code><script>document.write("<div></div>");</script> </code>està bé.</li> + <li><span id="result_box" lang="ca"><span>No escriviu</span> <span>un símbol</span> <span>sense acabar</span></span>. <code><script>document.write("<div></div");</script></code> is incorrecta.</li> + <li><span id="result_box" lang="ca"><span>No</span> <span>acabeu un</span> <span>escrit</span> <span>amb</span> <span>un retorn de</span> <span>carro</span></span>. <code><script>document.write("Hello World!\r");</script></code> és incorrecta <code><script>document.write("Hello World!\n");</script> </code>està bé.</li> + <li>Noteu que l'escriptura d'etiquetes equilibrades pot fer que altres etiquetes poguin inferir d'una manera que fa que l'escriptura sigui desequilibrada. Per exemple <code><script>document.write("<div></div>");</script></code> dins de l'element head s'interpreta com <code><script>document.write("</head><body><div></div>");</script></code> el qual està desequilibrat.</li> + <li><span class="short_text" id="result_box" lang="ca"><span class="alt-edited">No doneu format part d'una taula</span></span>. <code><table><script>document.write("<tr><td>Hello World!</td></tr>");</script></table></code> és incorrecta. However, <code><script>document.write("</code><code><table></code><code><tr><td>Hello World!</td></tr></code><code></table></code><code>");</script></code> està bé.</li> + <li>TODO: <span id="result_box" lang="ca"><span>document.write</span> <span>dins d'altres</span> <span>elements</span> <span>de format.</span></span>.</li> +</ul> |