JavaScript-Loader sind sehr leistungsstarke und nützliche Tools in der Webentwicklung. Mehrere gängige Lader wie Curljs, LABjs und RequireJS werden häufig verwendet. Sie sind leistungsstark, aber für manche Situationen gibt es auch einfachere Lösungen.
Wenn Sie jQuery verwenden, gibt es eine integrierte Methode zum Laden von Skripten. Sie können diese Methode verwenden, wenn Sie Plugins oder andere Arten von Skripten verzögert laden möchten. Hier erfahren Sie, wie Sie es verwenden.
Implementierungsmethode
jQuery verfügt über eine integrierte getScript-Methode zum Laden eines Skripts. Es gibt mehrere Möglichkeiten, die zurückgegebenen Ergebnisse zu verarbeiten. Die grundlegendste Verwendung von jQuery.getScript sieht wie folgt aus:
jQuery.getScript("/path/to/myscript.js", function(data, status, jqxhr) {
/*
Nachdem das Skript geladen und ausgeführt wurde, können Sie etwas verarbeiten
*/
});
getScript-Methode gibt ein jqXHR-Objekt zurück, sodass es wie folgt verwendet werden kann:
jQuery.getScript("/path/to/myscript.js")
.done(function() {
/* Verarbeitung nach erfolgreicher Ausführung*/
})
.fail(function() {
/* Verarbeitung nach fehlgeschlagener Ausführung*/
}) ;
Das häufigste Szenario für die Verwendung von jQuery.getScript besteht darin, ein Plugin verzögert zu laden und es nach dem Laden aufzurufen:
jQuery.getScript("jquery.cookie.js")
.done(function() {
jQuery.cookie(" cookie_name", "value", { läuft ab: 7 });
});
Wenn Sie fortgeschrittenere Dinge tun müssen, wie das Laden mehrerer Skripte und verschiedener Dateitypen (Textdateien, Bilder, CSS-Dateien usw.), empfehle ich Ihnen, auf einen leistungsfähigeren JavaScript-Loader umzusteigen. getScript ist perfekt, wenn Sie das Plugin nur langsam laden möchten, anstatt einfach bei jedem Seitenladevorgang!
Caching-Probleme Es ist zu beachten, dass bei Verwendung von jQuery.getScript automatisch ein Zeitstempel am Ende der Skript-URL hinzugefügt wird, um zu verhindern, dass das Skript ausgeführt wird zwischengespeichert. Daher müssen Sie das Cache-Skript für alle Anfragen einrichten:
jQuery.ajaxSetup({
cache: true
});
Wenn Sie nicht den gesamten Cache mit Ihrer AJAX-Anfrage überschreiben möchten, ist es besser, dies zu tun Verwenden Sie die jQuery.ajax-Methode und setzen Sie dataType Set auf Skript, zum Beispiel:
jQuery.ajax({
url: "jquery.cookie.js",
dataType: "script",
cache: true
}).done(function() {
jQuery.cookie("cookie_name", "value", { läuft ab: 7 });
Sie müssen beim Laden von Skripten besonders auf Caching-Probleme achten !