1unitedpower: lazyload mit noscript

Beitrag lesen

Dein erster Halbsatz erweckt hier aber einen falschen Eindruck, denn es ist zwar richtig, dass beim Laden des Dokuments der Inhalt des script-Elementes nicht geparst wird, aber das heißt nicht, dass man auf darin enthaltene HTML-Inhalte grundsätzlich nicht zugreifen kann:

Den Eindruck wollte ich nicht erwecken.

Unter Verwendung der Methode innerHTML kann man dafür sorgen, dass der Inhalt des script-Elements nachträglich geparst wird und danach auch zur Verfügung steht.

Das geht, und wird von Polyfills vermutlich sogar so ähnlich implementiert. Der Punkt ist, dass man sich beim <script>-Element selber um das Parsing kümmern muss, das ist eine unnötige Abhängigkeit.

Der Vorteil des template-Elementes liegt hier rein funktional betrachtet nicht darin, dass es sonst nicht möglich wäre auf die hinterlegten Inhalte zuzugreifen, sondern vielmehr darin, dass wie du richtig sagst, der Inhalt bereits beim Laden der Seite geparst wird und somit zur Verfügung steht, wenn er gebraucht wird, was natürlich performanter ist, als wenn dies erst beim Methodenaufruf passiert.

Es ist vermutlich sogar wirklich etwas performanter, aber das sehe ich nur als marginalen Vorteil des <template>-Elements an. Wesentlich für mich ist, dass das <template>-Element eine uniforme Schnittstelle bietet, um die Inhalte zu adressieren und damit zu arbeiten.