Rumah  >  Artikel  >  hujung hadapan web  >  Mengapa Peristiwa `onload` Asli Tidak Dicetuskan untuk Tag Skrip Dimuatkan dengan jQuery?

Mengapa Peristiwa `onload` Asli Tidak Dicetuskan untuk Tag Skrip Dimuatkan dengan jQuery?

Barbara Streisand
Barbara Streisandasal
2024-11-02 08:48:02522semak imbas

Why is the Native `onload` Event Not Firing for Script Tags Loaded with jQuery?

Peristiwa onload asli Tidak Dicetuskan untuk Teg Skrip Dimuatkan dengan jQuery

Apabila cuba memuatkan urutan skrip dalam susunan tertentu, pembangun boleh menghadapi senario di mana peristiwa onload asli gagal dicetuskan. Isu ini timbul apabila menggunakan jQuery untuk menambahkan elemen skrip pada DOM.

Untuk menyelesaikan masalah ini, ubah suai kod berikut:

el.onload = function(script){ ...
el.src = script;

Coretan kod ini salah menetapkan atribut src selepas fungsi acara onload. Sebaliknya, ia harus diubah suai seperti berikut:

el.onload = function(script){ ...
el.src = script;

Selain itu, pastikan elemen skrip dilampirkan pada DOM sebelum melampirkan acara onload:

$body.append(el);
el.onload = function() { ...
el.src = script;

Adalah penting untuk diperhatikan bahawa pengendalian keadaan sedia diperlukan untuk sokongan IE. Sebagai alternatif, menggunakan kaedah getScript() jQuery disyorkan: http://api.jquery.com/jQuery.getScript/.

Atas ialah kandungan terperinci Mengapa Peristiwa `onload` Asli Tidak Dicetuskan untuk Tag Skrip Dimuatkan dengan jQuery?. 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