Sat. Dec 21st, 2024

#GTMTips: compruebe si se ha activado el DOM listo o la ventana cargada


De vez en cuando me encuentro con un problema que necesita algo de creatividad para encontrar una solución. Al elegir un curso de acción, tiendo a encontrar primero una solución extremadamente complicada. Sin embargo, si soy lo suficientemente paciente, logro reducirlo a algo mucho más manejable y eficiente.

en esto #GMTConsejos publish, te mostraré una de estas soluciones extremadamente simples a un problema que normalmente complicarías demasiado. La solución es una característica muy bien oculta de Administrador de etiquetas de Googleenterrado profundamente en las entrañas del google_tag_manager interfaz.


incógnita


El boletín a fuego lento

Suscríbete al Boletín a fuego lento para recibir las últimas noticias y contenido de Simo Ahava en su bandeja de entrada de correo electrónico.

Consejo 42: compruebe si se han activado DOM Prepared o Window Loaded

Este consejo es muy, muy sencillo. Básicamente, hay dos banderas en el google_tag_manager interfaz, y se activan primero cuando se produce el evento “DOM Prepared” y luego cuando se produce el evento “Window Loaded”.

Si no tuviera acceso a estas banderas, las opciones restantes serían algo horrible como pasar por el dataLayer Array, buscando el gtm.dom y gtm.cargao crear sus propios oyentes para los eventos de carga de ventana y DOM. Ambos tienen problemas de sincronización en Google Tag Supervisor y ambos agregan complejidad adicional a una situación que ya podría resolverse usando algo nativo de Google Tag Supervisor.

De todos modos, puede usar estos indicadores de interfaz para asegurarse de que sus activadores no se activen antes de que cualquiera de los activadores de carga de página se haya activado. Un caso de uso típico sería que tiene un sitio que se carga lentamente y no desea que se lively un activador antes de que el DOM se haya cargado por completo o se hayan descargado todos los recursos vinculados (por ejemplo, jQuery).

Así es como funciona:

window('google_tag_manager').dataLayer.gtmDom; // true when DOM Prepared has fired
window('google_tag_manager').dataLayer.gtmLoad; // true when Window Loaded has fired

Estas son las banderas globales. Para obtener los datos en GTM, cree dos Variables de JavaScript:

Ahora puedes comprobar si estas variables regresan verdaderoy utilícelo en los activadores para establecer cierto orden en el caos de la carga de la página.

Related Post

Leave a Reply

Your email address will not be published. Required fields are marked *