Show Menu
THEMEN×

Load order for rules

Die Ladereihenfolge des dynamischen Tag-Managements im Verhältnis zur javascript-Ladereihenfolge.
Das unten stehende Diagramm zeigt die allgemeine Seitenladereihenfolge.
Roter Text im obigen Diagramm stellt nicht sequenzielle Aktivitäten dar. Grüner Text steht für sequenzielle Aktivitäten.
Im folgenden Abschnitt wird erläutert, wie verschiedene Skriptoptionen für JavaScript-/Drittanbieter-Tags in den vier Ladephasen von Seiten genutzt werden:
  • Seitenanfang
    • Sequenzielles HTML: In <HEAD/> unterhalb der DTM-Bibliothek eingefügt, enthält Skript, wenn <SCRIPT/> Tags verwendet werden. Andernfalls wird oben auf <BODY/>
    • Sequenzielles javascript global: In <HEAD/> unterhalb von DTM eingefügt, enthält Skript als javascript einschließlich <SCRIPT/>
    • Sequenzielles javascript lokal: In <HEAD/> unterhalb von DTM eingefügt, enthält Skript als javascript einschließlich <SCRIPT/>
    • Nicht sequenzielles javascript: Als asynchron <SCRIPT/> in <HEAD> unterhalb der DTM-Bibliothek eingefügt, enthält Skript
    • Nicht sequenzielles HTML: Eingefügt als ausgeblendeter IFRAME , nimmt keinen Einfluss auf HTML der Seite
  • Seitenende
    • Sequenzielles HTML: Wird nach _satellite.pageBottom() dem Callback-Skript mit document.write() vorangestelltem DOMREADY eingefügt, sodass die sichtbare Seite nicht zerstört wird
    • Sequenzielles javascript global: Wird nach _satellite.pageBottom() javascript eingefügt <SCRIPT/>
    • Sequenzielles javascript lokal: Wird nach _satellite.pageBottom() javascript eingefügt <SCRIPT/>
    • Nicht sequenzielles javascript: Als asynchron <SCRIPT/> in <HEAD> unterhalb der DTM-Bibliothek eingefügt, enthält Skript
    • Nicht sequenzielles HTML: Eingefügt als ausgeblendeter IFRAME , nimmt keinen Einfluss auf HTML der Seite
  • DOM-bereit
    • Sequenzielles HTML: Funktioniert nicht, weil DOMREADY aktiv und document.write() die Seite überschrieben wird
    • Sequenzielles javascript global: In <HEAD/> unterhalb von DTM eingefügt, enthält Skript als javascript einschließlich <SCRIPT/>
    • Sequenzielles javascript lokal: In <HEAD/> unterhalb von DTM eingefügt, enthält Skript als javascript einschließlich <SCRIPT/>
    • Nicht sequenzielles javascript: Als asynchron <SCRIPT/> in <HEAD> unterhalb der DTM-Bibliothek eingefügt, enthält Skript
    • Nicht sequenzielles HTML: Eingefügt als ausgeblendeter IFRAME , nimmt keinen Einfluss auf HTML der Seite
  • Onload (Laden des Fensters)
    • Sequenzielles HTML: Funktioniert nicht, weil DOMREADY aktiv und document.write() die Seite überschrieben wird
    • Sequenzielles javascript global: In <HEAD/> unterhalb von DTM eingefügt, enthält Skript als javascript einschließlich <SCRIPT/>
    • Sequenzielles javascript lokal: In <HEAD/> unterhalb von DTM eingefügt, enthält Skript als javascript einschließlich <SCRIPT/>
    • Nicht sequenzielles javascript: Als asynchron <SCRIPT/> in <HEAD> unterhalb der DTM-Bibliothek eingefügt, enthält Skript
    • Nicht sequenzielles HTML: Eingefügt als ausgeblendeter IFRAME , nimmt keinen Einfluss auf HTML der Seite
Nicht sequenzielle Drittanbieter-HTML-Regeln werden stets in iFrames platziert. Es gibt keine asynchrone HTML, sodass dynamisches Tag-Management die iframe-Funktion mit diesem Namen referenziert.
Even though scripts might be injected into the <HEAD/> later in the page processing like DOMREADY and ONLOAD , scripts will only appear in the proper timing sequence and be either global, local, synchronous, or asynchronous. Also, Dynamic Tag Management checks to make sure that the timing is being handled properly and if DOMREADY has already occurred, it will not attempt a page-destructive document.write() . Das dynamische Tag-Management sorgt dafür, dass die visuelle Seite nach Möglichkeit nicht umgebrochen wird. Aus diesem Grund wird Ihnen möglicherweise eine Fehlermeldung zur ansynchronen Installation angezeigt, obwohl die Installation selbst gar nicht asynchron ist. Es handelt sich lediglich um eine Benachrichtigung, mit deren Hilfe Sie erkennen, dass das Timing auf der Seite fragwürdig ist und dass DOMREADY vor allen synchronen Skripten ausgelöst wurde, die wie gewünscht geladen wurden. If that happens, check to make sure that the pageBottom() callback is actually in the correct place immediately prior to the </body> tag. Falls nicht, können diese Fehlertypen auftreten.
Die Warteschlange des dynamischen Tag-Managements verarbeitet sie in der oben aufgeführten Reihenfolge, unterscheidet innerhalb der Seitenladephase jedoch nicht zwischen einem javascript- und einem HTML-Skript.
Das bedeutet, dass die Reihenfolge der Seitenladeregeln in der Warteschlange bestimmt, in welcher Reihenfolge sie aus der Warteschlange entfernt werden.
A simple way to determine the queue order is to look at _satellite.configurationSettings.pageLoadRules in the JavaScript console and examine the sequence.
Um beispielsweise eine vollständige Ansicht der Warteschlangenreihenfolge der Seitenladeregeln anzuzeigen, können Sie in der JavaScript-Konsole folgenden Code eingeben:
 _satellite.each(_satellite.configurationSettings.pageLoadRules,function(i){(i.event=='pagetop')?_satellite.notify(i.event+': '+i.name,1):false})
 _satellite.each(_satellite.configurationSettings.pageLoadRules,function(i){(i.event=='pagebottom')?_satellite.notify(i.event+': '+i.name,1):false})
 _satellite.each(_satellite.configurationSettings.pageLoadRules,function(i){(i.event=='domready')?_satellite.notify(i.event+': '+i.name,1):false})
 _satellite.each(_satellite.configurationSettings.pageLoadRules,function(i){(i.event=='windowload')?_satellite.notify(i.event+': '+i.name,1):false})