Show Menu
TEMAS×

Orden de carga de las reglas

El orden de carga de la administración dinámica de etiquetas en relación con el orden de carga de JavaScript.
El diagrama siguiente muestra el orden general de carga de la página.
El texto rojo del diagrama anterior representa la actividad no secuencial. El texto verde representa la actividad secuencial.
En la siguiente sección se explica cómo se utilizan las distintas opciones de script de etiquetas de terceros/JavaScript en las cuatro fases de carga de página:
  • Principio de la página
    • HTML secuencial: Inyectada en <HEAD/> debajo de la biblioteca de la DTM incluye script si se utilizan <SCRIPT/> etiquetas; de lo contrario, se inyecta en la parte superior de <BODY/>
    • JavaScript secuencial global: Inyectada en <HEAD/> debajo de la DTM incluye script, ya que JavaScript incluye <SCRIPT/>
    • JavaScript secuencial local: Inyectada en <HEAD/> debajo de la DTM incluye script, ya que JavaScript incluye <SCRIPT/>
    • JavaScript no secuencial: Se inserta como asíncrono <SCRIPT/> en <HEAD> debajo de la biblioteca de la DTM incluir script
    • HTML no secuencial: Se inserta como oculto IFRAME y no afecta al HTML de la página
  • Parte inferior de la página
    • HTML secuencial: Se inyecta después _satellite.pageBottom() de la secuencia de comandos de llamada de retorno con document.write() antes de DOMREADY para que no se destruya la página visible
    • JavaScript secuencial global: Se inyecta después de _satellite.pageBottom() que JavaScript incluya <SCRIPT/>
    • JavaScript secuencial local: Se inyecta después de _satellite.pageBottom() que JavaScript incluya <SCRIPT/>
    • JavaScript no secuencial: Se inserta como asíncrono <SCRIPT/> en <HEAD> debajo de la biblioteca de la DTM incluir script
    • HTML no secuencial: Se inserta como oculto IFRAME y no afecta al HTML de la página
  • DOM Ready
    • HTML secuencial: No funcionará porque DOMREADY está activa y document.write() sobrescribirá la página
    • JavaScript secuencial global: Inyectada en <HEAD/> debajo de la DTM incluye script, ya que JavaScript incluye <SCRIPT/>
    • JavaScript secuencial local: Inyectada en <HEAD/> debajo de la DTM incluye script, ya que JavaScript incluye <SCRIPT/>
    • JavaScript no secuencial: Se inserta como asíncrono <SCRIPT/> en <HEAD> debajo de la biblioteca de la DTM incluir script
    • HTML no secuencial: Se inserta como oculto IFRAME y no afecta al HTML de la página
  • Onload (carga de ventana)
    • HTML secuencial: No funcionará porque DOMREADY está activa y document.write() sobrescribirá la página
    • JavaScript secuencial global: Inyectada en <HEAD/> debajo de la DTM incluye script, ya que JavaScript incluye <SCRIPT/>
    • JavaScript secuencial local: Inyectada en <HEAD/> debajo de la DTM incluye script, ya que JavaScript incluye <SCRIPT/>
    • JavaScript no secuencial: Se inserta como asíncrono <SCRIPT/> en <HEAD> debajo de la biblioteca de la DTM incluir script
    • HTML no secuencial: Se inserta como oculto IFRAME y no afecta al HTML de la página
Las reglas de terceros HTML no secuenciales siempre se colocan en iFrames. No existe HTML asincrónico, por lo que la administración dinámica de etiquetas hace referencia a la funcionalidad de iFrame con ese nombre.
Aunque las secuencias de comandos se puedan insertar en las <HEAD/> versiones posteriores del procesamiento de la página, como DOMREADY y ONLOAD , las secuencias de comandos solo aparecerán en la secuencia de tiempo adecuada y serán globales, locales, sincrónicas o asincrónicas. Además, la administración dinámica de etiquetas comprueba que la temporización se esté gestionando correctamente y, si DOMREADY se ha producido ya, no intentará destruir una página document.write() . La administración dinámica de etiquetas se esfuerza por no romper la página visual si es posible. Por este motivo, es posible que vea un error de "instalación asinc" cuando la instalación no sea realmente "asincrónica". Se trata simplemente de una alerta que le ayuda a reconocer que la temporización en la página es un tanto cuestionable y que DOMREADY se ha activado antes de que se carguen todos los scripts sincrónicos como debería. Si esto sucede, asegúrese de que la pageBottom() llamada de retorno se encuentra en el lugar correcto inmediatamente antes de la </body> etiqueta. Si no es así, se pueden producir estos tipos de errores.
La cola de administración dinámica de etiquetas los procesa en el orden indicado anteriormente, pero no distingue entre un JavaScript y un script HTML en la fase de carga de la página.
Esto significa que el orden de las reglas de carga de página en la cola determina el orden en que se quitan de la cola.
Una manera sencilla de determinar el orden de la cola es mirar _satellite.configurationSettings.pageLoadRules en la consola de JavaScript y examinar la secuencia.
Por ejemplo, se puede ver una vista completa del orden de la cola de reglas de carga de página introduciendo el siguiente código en la consola de JavaScript:
 _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})