Leitura recomendada:
Como resolver o problema do carregamento lento do js iframe
No projeto, você geralmente precisa adicionar dinamicamente o IFRames e executar operações relacionadas nos IFRames adicionados. Freqüentemente, o código subsequente foi executado antes que o iframe seja adicionado; portanto, algumas coisas que você escreve não são exibidas. Neste momento, temos que considerar se podemos esperar até que o iframe seja carregado antes de executar as operações subsequentes. Obviamente, vários navegadores há muito consideram isso para nós, veja abaixo:
ou seja, navegador
Cada nó Elem no IE terá um evento OnreadyStateChange. Este evento é acionado toda vez que o conteúdo elem é enviado para alterar. Por exemplo, o conteúdo é carregado e carregado após o carregamento do conteúdo. O conteúdo é carregado com sucesso será acionado. Essa função também precisa ser coordenada com o ReadyState. Esta é uma propriedade de propriedade de cada elem no IE para visualizar o status de cada gatilho.
// primeiro adiciona um onreadyStateChangeIframe.attachevent ("onereadyStatechange", function () {// Este evento também será acionado quando o conteúdo não estiver carregado, por isso precisamos julgar o estado // às vezes é estranho e o Readystate irá pular. "carregado") {// O código pode ser executado aqui e significa que o carregamento foi concluído com sucesso // o evento iframe.detachevent ("onereadystatechange", argumentos.callee); // esta é a função de retorno de chamada}});Outros navegadores (Firefox, Opera, Chrome, etc.)
Em outros navegadores que não são de AI, Firefox, Opera, Chrome e outros iframes terão um evento Onload. Enquanto este evento for acionado, significa que o conteúdo do nome foi carregado.
iframe.adDeventListener ("load", function () {// O código pode ser executado aqui e significa que a carga foi concluída com sucesso. this.removeEventListener ("carregamento", argumentos.CALL, false); // Esta é a função de retorno de chamada}, false);Vamos resumir
if (iframe.attachevent) {iframe.attachevent ("oNreadyStateChange", function () {// Este evento também será acionado quando o conteúdo não for carregado, por isso precisamos julgar o estado // às vezes, se formar) que o estadual é necessário. {// O código pode ser executado aqui e significa que o carregamento foi concluído com sucesso // o evento iframe.detachevent ("oNreadyStateChange", argumentos.callee); // Esta é a função de retorno de chamada e o que pode ser necessário. This.RemoveEventListener ("load", argumentos.call, false); // Esta é a função de retorno de chamada}, false);}NOTA: A função acima deve ser colocada após o IFRAME for ApndendChild no corpo, caso contrário, não será acionada.
O conteúdo acima é o método do JS para determinar se um iframe é carregado com sucesso pelo editor. Espero que seja útil para todos!