Heim >Web-Frontend >js-Tutorial >Warum wird das native „onload'-Ereignis nicht für mit jQuery geladene Skript-Tags ausgelöst?
Natives Onload-Ereignis wird für mit jQuery geladene Skript-Tags nicht ausgelöst
Beim Versuch, eine Sequenz von Skripten in einer bestimmten Reihenfolge zu laden, kann es sein, dass Entwickler Es kommt zu einem Szenario, in dem das native Onload-Ereignis nicht ausgelöst wird. Dieses Problem tritt auf, wenn jQuery zum Anhängen des Skriptelements an das DOM verwendet wird.
Um dieses Problem zu beheben, ändern Sie den folgenden Code:
el.onload = function(script){ ... el.src = script;
Dieses Codefragment weist das src-Attribut nach dem fälschlicherweise zu Onload-Ereignisfunktion. Stattdessen sollte es wie folgt geändert werden:
el.onload = function(script){ ... el.src = script;
Stellen Sie außerdem sicher, dass das Skriptelement an das DOM angehängt wird, bevor Sie das Onload-Ereignis anhängen:
$body.append(el); el.onload = function() { ... el.src = script;
Es ist wichtig zu beachten dass für die IE-Unterstützung eine Readystate-Behandlung erforderlich ist. Alternativ wird die Verwendung der getScript()-Methode von jQuery empfohlen: http://api.jquery.com/jQuery.getScript/.
Das obige ist der detaillierte Inhalt vonWarum wird das native „onload'-Ereignis nicht für mit jQuery geladene Skript-Tags ausgelöst?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!