Mi secuencia de comandos carga un iframe cuando el usuario hace clic en un botón. Quiero llamar a otra función después de que se cargue el iframe, pero no está funcionando. El iframe se carga normalmente, pero el evento .load() nunca se llama después de que el iframe termine de cargarse. El iframe contiene contenido del mismo sitio web (sin contenido externo). Lo extraño es que estoy usando la misma técnica que se describe a continuación en algunos otros puntos de mi código y funciona perfectamente. ¿Alguien puede sugerir qué debo verificar a continuación?jQuery onload - .load() - event no funciona con un iframe cargado dinámicamente
Aquí está el código correspondiente:
$('#myIframe').load(function() {
alert('iframe loaded');
});
$('#someButton').live('click', function() {
$('body').append($('<iframe id="myIframe" src="https://www.mywebsite.com" width="100%"></iframe>'));
});
Encontré un error similar con Firefox. Específicamente, si se crea un nuevo elemento 'iframe' y se inserta en el DOM, pero no se especifica un atributo' src', el evento 'load' se disparará. Detallé mi caso de uso y trabajo en caso de que alguien se encuentre con lo mismo: http://web.onassar.com/blog/2013/03/03/firefox-is-calling-the-load-event-to-soon -on-an-iframe / – onassar