"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo implementar una devolución de llamada cuando un IFRAME termina de cargarse con Javascript?

¿Cómo implementar una devolución de llamada cuando un IFRAME termina de cargarse con Javascript?

Publicado el 2024-11-07
Navegar:640

How to Implement a Callback When an IFRAME Finishes Loading with Javascript?

Cargando iframe con devolución de llamada de Javascript

Para ejecutar una devolución de llamada cuando un IFRAME termine de cargarse, siga estos pasos:

Crear el IFRAME y el controlador de carga

Crear el IFRAME mediante programación:

var iFrameObj = document.createElement('IFRAME');
iFrameObj.src = url;

Agregue un controlador de carga al IFRAME:

$(iFrameObj).load(function() {
  // handle iframe load
});

Acceder al contenido del IFRAME y destruirlo

Dentro del controlador de carga, acceder al contenido del IFRAME y destruirlo:

function callback(iFrameObj) {
  // obtain iframe data
  var iframeData = $('body', iFrameObj.contentWindow.document).html();
  // destroy the iframe
  document.body.removeChild(iFrameObj);
}

Consideraciones adicionales

  • Asegúrese de que, si utiliza tiempos de espera para la eliminación, establezca un retraso adecuado para permitir que se cargue el IFRAME.
  • Evitar solicitudes entre sitios ya que no se puede acceder a su contenido.
  • Utilice jQuery para compatibilidad entre navegadores y eventos de carga explícitos.

Ejemplo

$('#myUniqueID').load(function() {
  if (typeof callback == 'function') {
    callback($('body', this.contentWindow.document).html());
  }
  setTimeout(function () {$('#frameId').remove();}, 50);
});
Declaración de liberación Este artículo se reimprime en: 1729302797 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3