Grundlagen der Webtechnologien
Bei der Verarbeitung, die ein Browser bis zur Anzeige des ersten Bildschirms ausführt (dem kritischen Rendering-Pfad), hält ein ohne Attribute in <head> geschriebenes <script src="app.js"> das Parsen des HTML an dieser Stelle an. Wie verhält sich das Element, wenn es das Attribut defer erhält?
- AEs wird ausgeführt, sobald der Download fertig ist, wobei das Parsen des HTML angehalten wird; die Ausführungsreihenfolge mehrerer Skripte ist nicht garantiert
- BEs wird weder heruntergeladen noch ausgeführt, sondern erst geladen, wenn der Nutzer mit der Seite interagiert
- CEs wird parallel zum Parsen des HTML heruntergeladen und nach dem Ende des Parsens in der Reihenfolge ausgeführt, in der es im Dokument steht
Antwort und Erläuterung anzeigen
Antwort: C. Es wird parallel zum Parsen des HTML heruntergeladen und nach dem Ende des Parsens in der Reihenfolge ausgeführt, in der es im Dokument steht
Der Browser parst HTML zum DOM und CSS zum CSSOM, kombiniert beide, um festzulegen, was gezeichnet wird, berechnet Position und Größe der Elemente (Layout) und zeichnet sie dann (Paint). Ein script-Element ohne Attribute könnte das DOM verändern, deshalb hält es das Parsen des HTML an, bis es heruntergeladen und ausgeführt ist. Mit defer läuft der Download parallel zum Parsen, und die Ausführung erfolgt nach dem Parsen in der Reihenfolge, in der die Skripte im Dokument stehen. Mit async wird ein Skript ausgeführt, sobald sein Download fertig ist, daher ist die Reihenfolge nicht garantiert.