Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Melaksanakan Panggilan Balik Apabila IFRAME Selesai Memuatkan dengan Javascript?

Bagaimana untuk Melaksanakan Panggilan Balik Apabila IFRAME Selesai Memuatkan dengan Javascript?

Patricia Arquette
Patricia Arquetteasal
2024-10-19 11:19:29474semak imbas

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

Memuatkan Iframe dengan Javascript Callback

Untuk melaksanakan panggilan balik apabila IFRAME selesai dimuatkan, ikut langkah berikut:

Buat IFRAME dan Pengendali Muatan

Buat IFRAME secara pemrograman:

<code class="javascript">var iFrameObj = document.createElement('IFRAME');
iFrameObj.src = url;</code>

Tambah pengendali beban pada IFRAME:

<code class="javascript">$(iFrameObj).load(function() {
  // handle iframe load
});</code>

Akses Kandungan IFRAME dan Musnahkannya

Dalam pengendali beban, akses kandungan IFRAME dan musnahkannya:

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

Pertimbangan Tambahan

  • Pastikan bahawa jika menggunakan tamat masa untuk dialih keluar, tetapkan kelewatan yang sesuai untuk membenarkan IFRAME dimuatkan.
  • Elakkan permintaan merentas tapak kerana kandungannya tidak boleh diakses.
  • Gunakan jQuery untuk keserasian merentas penyemak imbas dan acara pemuatan eksplisit.

Contoh

<code class="javascript">$('#myUniqueID').load(function() {
  if (typeof callback == 'function') {
    callback($('body', this.contentWindow.document).html());
  }
  setTimeout(function () {$('#frameId').remove();}, 50);
});</code>

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Panggilan Balik Apabila IFRAME Selesai Memuatkan dengan Javascript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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