Bagaimana untuk Mengesahkan Status Pemuatan iFrame dengan Amanah Apabila `iframe.load()` Gagal?

Mary-Kate Olsen
Lepaskan: 2024-10-25 06:19:02
asal
817 orang telah melayarinya

How to Reliably Verify an iFrame's Loading Status When `iframe.load()` Fails?

Memahami Status Pemuatan iFrame

Mengesahkan keadaan dimuatkan iFrame adalah penting untuk melaksanakan tindakan setelah selesai atau mengesan kegagalan pemuatan. Artikel ini menangani cabaran untuk menentukan status dimuatkan iFrame dengan kekangan tertentu.

Pertimbangkan senario berikut: iFrame dengan id "myIframe" dimuatkan menggunakan kod yang disediakan. Walau bagaimanapun, masa pemuatan berbeza-beza, menghalang penggunaan acara "iframe.load()".

Penyelesaian: Penyemakan Berulang

Untuk mengatasi isu ini, penyemakan berulang pendekatan boleh dilaksanakan. Coretan kod berikut menunjukkan strategi ini:

<code class="javascript">function checkIframeLoaded() {
    // Get a handle to the iframe element
    var iframe = document.getElementById('i_frame');
    var iframeDoc = iframe.contentDocument || iframe.contentWindow.document;

    // Check if loading is complete
    if (iframeDoc.readyState == 'complete') {
        //iframe.contentWindow.alert("Hello");
        iframe.contentWindow.onload = function() {
            alert("I am loaded");
        };
        // The loading is complete, call the function we want executed once the iframe is loaded
        afterLoading();
        return;
    }

    // If we are here, it is not loaded. Set things up so we check the status again in 100 milliseconds
    window.setTimeout(checkIframeLoaded, 100);
}

function afterLoading() {
    alert("I am here");
}

window.onload = checkIframeLoaded();</code>
Salin selepas log masuk

Kod ini secara berulang menyemak sifat "readyState" dokumen iFrame, memastikan pemuatan selesai sebelum melaksanakan tindakan yang diingini (mis., memaparkan mesej amaran). Fungsi "afterLoading()" dipanggil sebaik sahaja iFrame dimuatkan.

Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Status Pemuatan iFrame dengan Amanah Apabila `iframe.load()` Gagal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!