Es hora de algo muy easy. #ConsejosGTMT Artículo (lo sé, siempre escribo que estos son consejos simples, pero luego se convierten en complejos gigantes). Hoy, cubriremos un ingenioso truco que puedes usar con el Activador de visibilidad de elementos en Administrador de etiquetas de GoogleEste consejo surgió de una pregunta de Eugen Potlog en el Grupo de Fb de Google Tag Supervisor.
El caso de uso es que tienes un disparador de visibilidad de elementos que se activa para varios elementos que comparten el mismo selector CSS. En la imagen a continuación, quiero que el disparador de visibilidad se lively cuando cualquier
5
para usar en mis etiquetas. Si es el primer encabezado, quiero que devuelva 1
.
Esto es bastante fácil de hacer con una variable de JavaScript personalizada y a continuación te mostraré cómo.
incógnita
El boletín informativo de Simmer
Suscríbete a la Boletín informativo de Simmer ¡Para recibir las últimas noticias y contenidos de Simo Ahava en tu bandeja de entrada de correo electrónico!
Consejo 84: Obtenga el índice de posición del elemento seen
Así es como debería verse la variable JavaScript personalizada:
perform() {
var checklist = doc.querySelectorAll('h2'), // Ensure this CSS selector matches the one within the set off
el = {{Click on Component}};
return ().indexOf.name(checklist, el) + 1;
}
Esto hace uso de algo en lo que quizás no hayas pensado antes, es decir, el hecho de que la variable incorporada {{Hacer clic en el elemento}} Devuelve el elemento que provocó que se activara el disparador de visibilidad del elemento. Es una variable multipropósito en ese sentido.
El script primero crea una lista de todos los elementos posibles para los que se puede activar el disparador de Visibilidad de Elemento, por lo que es importante que El argumento selector de doc.querySelectorAll(selector)
coincide con el que utiliza en el disparador de visibilidad del elementoUna vez creada la lista, indexOf()
se utiliza contra un objeto de matriz nativo (porque la lista devuelta por querySelectorAll
no tiene el .indexOf()
método) y verifica si la lista contiene el elemento que activó el disparador.
Si la lista lo contiene, la posición del elemento se devuelve como un entero positivo, por lo que el primer elemento de la página sería 1
el segundo sería 2
y así sucesivamente. Si el elemento no coincide con la lista de elementos de la variable checklist
posición 0
se devuelve. Esto significa que ha configurado incorrectamente el selector(es).
Este fue un consejo easy, sin duda, ¡pero espero que sea útil para algunos de ustedes!