Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

101
Vistas
Función de activación en iframe cuando se completa la solicitud de búsqueda por ventana principal

Desde un iframe, ¿hay alguna manera de activar una función cuando se completa una búsqueda realizada por el padre?

El tema en detalle:

En un sitio web, estoy ejecutando un script externo en Google Tag Manager (que no controlo) que obtiene un conjunto de etiquetas de seguimiento. El script coloca las etiquetas en campos ocultos en un formulario en la página principal de forma predeterminada. Sin embargo, quiero que se transfieran a campos ocultos en un formulario de Hubspot iframed en esa página. Y no quiero bloquear la carga del formulario en sí.

He agregado campos ocultos de marcador de posición en la página principal para capturar los valores obtenidos. En el método de Hubspot forms.create, configuré el oyente onFormReady para ejecutar una función para obtener los valores de los campos de marcador de posición y colocarlos en los campos de formulario de hubspot.

Esto no siempre funciona, ya que onFormReady puede activarse antes de que se obtengan los valores y se agreguen a los campos de marcador de posición. Entonces, la función colocó una cadena vacía en los campos de formulario enmarcados.

No funcionó sobrescribir la solicitud de búsqueda desde el oyente de onFormReady. Encontré esta respuesta , sugiriendo usar un observador de rendimiento, que funcionó para mí. El código de inserción de mi formulario ahora se ve a continuación.

Como se mencionó, funciona, pero parece que abusa del observador de rendimiento por algo para lo que no estaba destinado y, por lo tanto, ¿no es muy robusto? Tengo curiosidad por saber si hay una solución mejor para esto.

 <script> hbspt.forms.create({ //some Hubspot form properties here onFormReady: function(form) { if (!document.querySelector('input[name="UtmSource"]').value) { const observer = new PerformanceObserver((list) => { for (const entry of list.getEntries()) { if (entry.initiatorType === 'fetch' && entry.name.includes('https://whatever.com')) { addTagsToForm(); } } }); observer.observe({ entryTypes: ['resource'] }); } else { addTagsToForm(); }; function addTagsToForm() { // function to grab values from placeholder fields on parent and add to iframed fields here } } } }); </script>
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda