{"id":14854,"date":"2026-10-26T12:45:00","date_gmt":"2026-10-26T11:45:00","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=14854"},"modified":"2026-10-26T13:09:08","modified_gmt":"2026-10-26T12:09:08","slug":"klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/","title":{"rendered":"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden"},"content":{"rendered":"<p>Der HTML-Parser liest den Seitenquelltext und baut daraus die Struktur der Seitenelemente auf. Ein von diesem Parser verarbeitetes <strong>klassisches Skript ohne <code>async<\/code> und ohne wirksames <code>defer<\/code><\/strong> unterbricht den weiteren HTML-Aufbau w\u00e4hrend der Ausf\u00fchrung. Sp\u00e4ter im Quelltext stehende Elemente sind dann normalerweise noch nicht im Dokumentbaum (DOM) vorhanden. F\u00fcr Module, asynchrone oder dynamisch eingef\u00fcgte Skripte gelten andere Regeln.<\/p>\n<p>Das erkl\u00e4rt einen typischen Fehler beim Theme-Wechsel: Der Schalter im Seitenkopf funktioniert, aber beim ersten Laden werden die Bilder im sp\u00e4ter folgenden Artikel nicht gefunden. Die Bilddateien k\u00f6nnen vollst\u00e4ndig vorhanden sein; die Abfrage erfolgt lediglich zu fr\u00fch.<\/p>\n<figure class=\"lw-diagram\"><img decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/quality-14854-20261024.png\" width=\"1120\" height=\"580\" loading=\"lazy\" alt=\"Isolierter Test: null Figuren w\u00e4hrend des Parsings, zwei danach und ein geplanter Bildtausch\"><figcaption>Test vom 24. Oktober 2026 in Chromium: zwei Figuren nach dem Kopfskript. Die Werte beschreiben dieses Beispiel, keine historischen Seitenabrufe.<\/figcaption><\/figure>\n<h2>Quelltextposition ist kein Laufzeitnachweis<\/h2>\n<p>Eine Byteposition zeigt die Reihenfolge im ausgelieferten HTML. Eine Z\u00e4hlung \u00f6ffnender Tags entspricht jedoch nicht automatisch der Zahl vorhandener DOM-Elemente: Kommentare, Skripttexte, implizit erzeugte Elemente und nachtr\u00e4gliche \u00c4nderungen k\u00f6nnen das Ergebnis ver\u00e4ndern. Auch fr\u00fcher ausgef\u00fchrte Skripte k\u00f6nnen bereits zus\u00e4tzliche Elemente angelegt haben.<\/p>\n<p>Ein geeigneter Nachweis erfasst deshalb <code>document.readyState<\/code> und die tats\u00e4chlich gefundenen Elemente direkt bei der Ausf\u00fchrung. Die fr\u00fcher genannten Seitenumf\u00e4nge und Dateizahlen werden hier nicht als reproduzierte Messung fortgeschrieben. Stattdessen zeigt ein kleines isoliertes Browserbeispiel den Mechanismus.<\/p>\n<h2>Was der Browsertest zeigt<\/h2>\n<p>Im Test vom 24. Oktober 2026 stehen zwei <code>figure<\/code>-Elemente nach einem klassischen Skript im Kopf. Die fr\u00fche Abfrage findet null Figuren. Ein externes klassisches Skript mit <code>defer<\/code> und ein normales Modul finden sp\u00e4ter beide Figuren. Ein <code>defer<\/code>-Attribut am eingebetteten klassischen Skript \u00e4ndert die fr\u00fche Ausf\u00fchrung nicht.<\/p>\n<p><code>querySelectorAll()<\/code> liefert zudem eine statische Liste. Die fr\u00fch gespeicherte leere Liste bleibt leer, auch nachdem die beiden Figuren existieren. Nach dem HTML-Aufbau ist deshalb eine neue Abfrage erforderlich. Gepr\u00fcft wurde ein isoliertes Chromium-Beispiel, keine Browsermatrix und keine historische Netzwerkaufzeichnung der Website.<\/p>\n<h2>Warum ein sp\u00e4terer Klick nicht gen\u00fcgt<\/h2>\n<p>Ein Klick nach dem Aufbau pr\u00fcft den Zustandswechsel bei bereits vorhandenen Elementen. Daraus folgt nicht, dass dieselbe Funktion beim ersten Laden funktioniert. Ein Klick kann au\u00dferdem schon w\u00e4hrend des Ladens erfolgen, sobald der Schalter angezeigt wird und eine Funktion f\u00fcr die Klickverarbeitung vorhanden ist.<\/p>\n<p>Eine gespeicherte helle Auswahl, ein Neuladen in dunkler Ansicht und ein Wechsel w\u00e4hrend des Ladens sind daher getrennte Testf\u00e4lle. F\u00fcr das Bildtauschen z\u00e4hlt jeweils der aktuelle Theme-Zustand. Bereits vorhandene Kopfzeilenelemente sagen nichts dar\u00fcber aus, ob die sp\u00e4ter folgenden Artikelfiguren schon existieren.<\/p>\n<h2>Bildtausch erst nach dem HTML-Aufbau<\/h2>\n<p>Das folgende Integrationsbeispiel setzt eine vorhandene Funktion <code>bilderJetztTauschen(hell)<\/code> voraus. Diese Funktion muss bei jedem Aufruf die aktuellen Bildelemente erneut abfragen und die passenden Adressen setzen. Der Ausschnitt organisiert ausschlie\u00dflich den Ausf\u00fchrungszeitpunkt.<\/p>\n<pre><code>const wurzel = document.documentElement;\nlet bildtauschGeplant = false;\n\nfunction bilderTauschen(hell) {\n    if (document.readyState === &#x27;loading&#x27;) {\n        if (bildtauschGeplant) return;\n        bildtauschGeplant = true;\n        document.addEventListener(&#x27;DOMContentLoaded&#x27;, function () {\n            bildtauschGeplant = false;\n            bilderJetztTauschen(wurzel.getAttribute(&#x27;data-theme&#x27;) === &#x27;light&#x27;);\n        }, { once: true });\n        return;\n    }\n    bilderJetztTauschen(hell);\n}<\/code><\/pre>\n<p>Solange <code>readyState<\/code> den Wert <code>loading<\/code> hat, wird h\u00f6chstens ein Listener registriert. Beim sp\u00e4teren Ereignis wird die aktuelle Auswahl aus <code>data-theme<\/code> gelesen. Nach dem HTML-Aufbau erfolgt der Aufruf sofort mit dem \u00fcbergebenen Wert. Die Auswahl muss vor dem Aufruf im Wurzelelement aktualisiert werden.<\/p>\n<p>Im isolierten Test f\u00fchrten drei fr\u00fche Aufrufe zu genau einem sp\u00e4teren Tausch mit der zuletzt gesetzten hellen Auswahl. Ein anschlie\u00dfender Aufruf mit dunkler Auswahl wirkte unmittelbar. Der Ausschnitt ist eine optimierte Variante; eine \u00c4nderung am produktiven Theme ist damit nicht verbunden.<\/p>\n<div class=\"lw-faq\">\n<h2>Fragen und Antworten<\/h2>\n<h3>Wann helfen defer und Module?<\/h3>\n<p>Bei externen klassischen Skripten verschiebt <code>defer<\/code> die Ausf\u00fchrung hinter das HTML-Parsing und erh\u00e4lt die Dokumentreihenfolge. Normale Module werden ebenfalls nach dem Parsing ausgef\u00fchrt. <code>async<\/code> bietet diese Zusage nicht; die Ausf\u00fchrung h\u00e4ngt von der Verf\u00fcgbarkeit des Skripts ab. Bei Modulen kann <code>async<\/code> auch ohne eigenes <code>src<\/code> relevant sein. F\u00fcr eingebettete klassische Skripte bleiben <code>defer<\/code> und <code>async<\/code> wirkungslos.<\/p>\n<h3>Warum DOMContentLoaded statt load?<\/h3>\n<p><code>DOMContentLoaded<\/code> folgt auf das HTML-Parsing und die zugeh\u00f6rigen verz\u00f6gerten Skripte. Das Ereignis wartet nicht auf alle Bilder oder asynchronen Skripte; Stylesheets k\u00f6nnen indirekt \u00fcber wartende Skripte verz\u00f6gern. <code>load<\/code> wartet zus\u00e4tzlich auf weitere Seitenressourcen, nimmt aber verz\u00f6gert geladene Bilder aus. F\u00fcr ben\u00f6tigte Webfonts ist <code>document.fonts.ready<\/code> der gezielte Pr\u00fcfpunkt. Zum Auffinden der Figuren gen\u00fcgt der aufgebaute Dokumentbaum.<\/p>\n<h3>Verhindert der Tausch doppelte Bild\u00fcbertragungen?<\/h3>\n<p>Nein. Vorablader oder der Bildlader k\u00f6nnen die urspr\u00fcngliche Adresse schon angefordert haben. Cache, Ladeabstand, Verbindung und Browser bestimmen den tats\u00e4chlichen Aufwand; <code>loading=\"lazy\"<\/code> garantiert keine vermiedene Anfrage. Netzwerkprotokolle sind daf\u00fcr aussagekr\u00e4ftiger als die Skriptposition.<\/p>\n<p><code>&lt;picture&gt;<\/code> mit <code>prefers-color-scheme<\/code> kann die Systemauswahl ber\u00fccksichtigen. Eine allein in <code>localStorage<\/code> gespeicherte Auswahl ist weder f\u00fcr CSS-Medienabfragen lesbar noch automatisch dem Server bekannt. Eine serverseitige Auswahl ben\u00f6tigt einen gesondert \u00fcbermittelten Zustand.<\/p>\n<h3>Was gilt bei sp\u00e4ter nachgeladenen Artikeln?<\/h3>\n<p><code>DOMContentLoaded<\/code> wird f\u00fcr dasselbe Dokument nicht erneut ausgel\u00f6st. Nach einem Inhaltswechsel ohne vollst\u00e4ndige Navigation ist ein eigener Aufruf nach dem Einf\u00fcgen erforderlich. Im Test erzeugte eine sp\u00e4ter eingef\u00fcgte dritte Figur keinen automatischen weiteren Tausch.<\/p>\n<\/div>\n<div class=\"lw-quellen\">\n<h2>Quellen<\/h2>\n<ul>\n<li><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/HTML\/Reference\/Elements\/script\" target=\"_blank\" rel=\"noopener noreferrer\">MDN: script-Element<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/Document\/DOMContentLoaded_event\" target=\"_blank\" rel=\"noopener noreferrer\">MDN: DOMContentLoaded<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/Window\/load_event\" target=\"_blank\" rel=\"noopener noreferrer\">MDN: load-Ereignis<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/Document\/querySelectorAll\" target=\"_blank\" rel=\"noopener noreferrer\">MDN: querySelectorAll<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/FontFaceSet\/ready\" target=\"_blank\" rel=\"noopener noreferrer\">MDN: FontFaceSet.ready<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/HTML\/Reference\/Elements\/img\" target=\"_blank\" rel=\"noopener noreferrer\">MDN: img und verz\u00f6gertes Laden<\/a><\/li>\n<li><a href=\"https:\/\/html.spec.whatwg.org\/multipage\/scripting.html#the-script-element\" target=\"_blank\" rel=\"noopener noreferrer\">WHATWG: Skriptverarbeitung<\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Klassische Skripte k\u00f6nnen den Dokumentbaum abfragen, bevor Artikelbilder existieren. Ein isolierter Browsertest erkl\u00e4rt defer, Module, statische Trefferlisten und einen einmalig geplanten Bildtausch nach dem Parsing.<\/p>\n","protected":false},"author":1,"featured_media":24208,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[150],"tags":[92268,92292,92277],"class_list":["post-14854","post","type-post","status-publish","format-standard","hentry","category-web-entwicklung","tag-javascript-de","tag-web-performance-de","tag-wordpress-de"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden | Lukas Wojcik<\/title>\n<meta name=\"description\" content=\"Ein Skript im Theme sollte Bilder f\u00fcr die helle Fassung tauschen und fand beim Laden nichts. Byteweise gemessen: Es stand bei 42,4 Prozent des Dokuments, alles Gesuchte kam danach.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden | Lukas Wojcik\" \/>\n<meta property=\"og:description\" content=\"Ein Skript im Theme sollte Bilder f\u00fcr die helle Fassung tauschen und fand beim Laden nichts. Byteweise gemessen: Es stand bei 42,4 Prozent des Dokuments, alles Gesuchte kam danach.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-26T11:45:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-26T12:09:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/10\/quality-hero-14854-20261024.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Lukas Wojcik\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lukas Wojcik\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/\"},\"author\":{\"name\":\"Lukas Wojcik\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden\",\"datePublished\":\"2026-10-26T11:45:00+00:00\",\"dateModified\":\"2026-10-26T12:09:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/\"},\"wordCount\":812,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/quality-hero-14854-20261024.png\",\"keywords\":[\"JavaScript\",\"Web Performance\",\"WordPress\"],\"articleSection\":[\"Web Entwicklung\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/\",\"name\":\"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden | Lukas Wojcik\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/quality-hero-14854-20261024.png\",\"datePublished\":\"2026-10-26T11:45:00+00:00\",\"dateModified\":\"2026-10-26T12:09:08+00:00\",\"description\":\"Ein Skript im Theme sollte Bilder f\u00fcr die helle Fassung tauschen und fand beim Laden nichts. Byteweise gemessen: Es stand bei 42,4 Prozent des Dokuments, alles Gesuchte kam danach.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/quality-hero-14854-20261024.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/quality-hero-14854-20261024.png\",\"width\":1200,\"height\":630,\"caption\":\"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/web-entwicklung\\\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"Lukas Wojcik\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"Lukas Wojcik\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden | Lukas Wojcik","description":"Ein Skript im Theme sollte Bilder f\u00fcr die helle Fassung tauschen und fand beim Laden nichts. Byteweise gemessen: Es stand bei 42,4 Prozent des Dokuments, alles Gesuchte kam danach.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/","og_locale":"en_US","og_type":"article","og_title":"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden | Lukas Wojcik","og_description":"Ein Skript im Theme sollte Bilder f\u00fcr die helle Fassung tauschen und fand beim Laden nichts. Byteweise gemessen: Es stand bei 42,4 Prozent des Dokuments, alles Gesuchte kam danach.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-10-26T11:45:00+00:00","article_modified_time":"2026-10-26T12:09:08+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/10\/quality-hero-14854-20261024.png","type":"image\/png"}],"author":"Lukas Wojcik","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Lukas Wojcik","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/"},"author":{"name":"Lukas Wojcik","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden","datePublished":"2026-10-26T11:45:00+00:00","dateModified":"2026-10-26T12:09:08+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/"},"wordCount":812,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/10\/quality-hero-14854-20261024.png","keywords":["JavaScript","Web Performance","WordPress"],"articleSection":["Web Entwicklung"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/","url":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/","name":"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden | Lukas Wojcik","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/10\/quality-hero-14854-20261024.png","datePublished":"2026-10-26T11:45:00+00:00","dateModified":"2026-10-26T12:09:08+00:00","description":"Ein Skript im Theme sollte Bilder f\u00fcr die helle Fassung tauschen und fand beim Laden nichts. Byteweise gemessen: Es stand bei 42,4 Prozent des Dokuments, alles Gesuchte kam danach.","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/10\/quality-hero-14854-20261024.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/10\/quality-hero-14854-20261024.png","width":1200,"height":630,"caption":"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/web-entwicklung\/klassische-skripte-und-dom-elemente-zum-richtigen-zeitpunkt-finden\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Klassische Skripte und DOM: Elemente zum richtigen Zeitpunkt finden"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"Lukas Wojcik","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"Lukas Wojcik"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"]}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/14854","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=14854"}],"version-history":[{"count":7,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/14854\/revisions"}],"predecessor-version":[{"id":27196,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/14854\/revisions\/27196"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/24208"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=14854"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=14854"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=14854"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}