Methode selbst ($.each,$.map,$.contains,$ajax)
Gemeinsame Tools und Methoden
(1)$.trim
Die Methode $.trim wird verwendet, um überschüssige Leerzeichen am Anfang und Ende der Zeichenfolge zu entfernen.
(2)$.contains
Die Methode $.contains gibt einen booleschen Wert zurück, der angibt, ob ein DOM-Element (zweiter Parameter) ein untergeordnetes Element eines anderen DOM-Elements (erster Parameter) ist.
(3) $.each, $.map
Die Methode $.each wird verwendet, um Arrays und Objekte zu durchlaufen und dann das ursprüngliche Objekt zurückzugeben. Es akzeptiert zwei Parameter, nämlich die Datenerfassung und die Rückruffunktion.
Die Methode $.map wird auch zum Durchlaufen von Arrays und Objekten verwendet, gibt jedoch ein neues Objekt zurück.
(4)$.inArray
Die Methode $.inArray gibt die Position eines Werts im Array zurück (beginnend bei 0). Befindet sich der Wert nicht im Array, wird -1 zurückgegeben.
(5)$.extend
Die $.extend-Methode wird verwendet, um mehrere Objekte zum ersten Objekt zusammenzuführen.
(6)$.proxy
Die $.proxy-Methode ähnelt der Bind-Methode von ECMAScript 5. Sie kann den Kontext der Funktion (d. h. dieses Objekts) und Parameter binden und eine neue Funktion zurückgeben.
Die Hauptverwendung von jQuery.proxy() besteht darin, Kontextobjekte an Rückruffunktionen zu binden.
Eine andere äquivalente Schreibweise für dieses Beispiel ist:
Dieses Beispiel zeigt, dass es hauptsächlich zwei Möglichkeiten gibt, die Proxy-Methode zu schreiben.
Sehen Sie sich ein anderes Beispiel an. Unter normalen Umständen verweist das Objekt „this“ im folgenden Code auf das DOM-Objekt, in dem das Klickereignis auftritt.
Zu diesem Zeitpunkt können Sie die Proxy-Methode verwenden, um dieses Objekt an das myElement-Objekt zu binden.
(7)$.data, $.removeData
Die Methode $.data kann zum Speichern von Daten auf DOM-Knoten verwendet werden.
Die Methode $.removeData wird verwendet, um die in der Methode $.data gespeicherten Daten zu entfernen.
(8)$.parseHTML, $.parseJSON, $.parseXML
Die Methode $.parseHTML wird zum Parsen von Zeichenfolgen in DOM-Objekte verwendet.
Die Methode $.parseJSON wird zum Parsen einer JSON-Zeichenfolge in ein JavaScript-Objekt verwendet, ähnlich der nativen Methode JSON.parse(). Allerdings bietet jQuery keine Methode ähnlich wie JSON.stringify(), das heißt, es bietet keine Methode zum Konvertieren von JavaScript-Objekten in JSON-Objekte.
Die Methode $.parseXML wird verwendet, um eine Zeichenfolge in ein XML-Objekt zu analysieren.
(9)$.makeArray
Die Methode $.makeArray wandelt ein Array-ähnliches Objekt in ein echtes Array um.
Methoden zur Bestimmung des Datentyps
jQuery bietet eine Reihe von Toolmethoden zur Bestimmung von Datentypen, um die Mängel des nativen JavaScript-Operators typeof auszugleichen. Die folgende Methode beurteilt die Parameter und gibt einen booleschen Wert zurück.
jQuery.isArray(): Ob es sich um ein Array handelt.
jQuery.isEmptyObject(): Ob es sich um ein leeres Objekt handelt (enthält keine aufzählbaren Eigenschaften).
jQuery.isFunction(): Ob es sich um eine Funktion handelt.
jQuery.isNumeric(): Ob es sich um ein Array handelt.
jQuery.isPlainObject(): Ob es sich um ein Objekt handelt, das mit „{}“ oder „new Object“ generiert wurde, anstelle eines vom Browser nativ bereitgestellten Objekts.
jQuery.isWindow(): Ob es sich um ein Fensterobjekt handelt.
jQuery.isXMLDoc(): Ermittelt, ob sich ein DOM-Knoten in einem XML-Dokument befindet.
Hier sind einige Beispiele.
Ajax-Betrieb
$.ajax
Das jQuery-Objekt definiert außerdem eine Ajax-Methode ($.ajax()) zur Verarbeitung von Ajax-Operationen. Nach dem Aufruf dieser Methode sendet der Browser eine HTTP-Anfrage an den Server.
$.ajax() kann auf viele Arten verwendet werden, am häufigsten wird ein Objektparameter bereitgestellt.
async: Dieses Element ist standardmäßig auf „true“ gesetzt. Wenn es auf „false“ gesetzt ist, bedeutet dies, dass eine synchrone Anfrage ausgegeben wird.
Cache: Dieses Element ist standardmäßig auf „true“ eingestellt, sodass der Browser die vom Server zurückgegebenen Daten nicht zwischenspeichert. Beachten Sie, dass der Browser selbst die von der POST-Anfrage zurückgegebenen Daten nicht zwischenspeichert. Selbst wenn er auf „false“ gesetzt ist, ist er nur für HEAD- und GET-Anfragen wirksam.
URL: serverseitige URL. Dies ist das einzige erforderliche Attribut, andere Attribute können weggelassen werden.
Typ: HTTP-Verb zum Senden von Informationen an den Server. Andere Verben sind POST, PUT und DELETE.
dataType: Der vom Server angeforderte Datentyp, der auf Text, HTML, Skript, JSON, JSONP und XML festgelegt werden kann.
Daten: An den Server gesendete Daten. Bei Verwendung der GET-Methode wird dieses Element in einen Abfragestring umgewandelt und an das Ende der URL angehängt.
Erfolg: Rückruffunktion, wenn die Anfrage erfolgreich ist. Die Funktionsparameter sind die vom Server zurückgegebenen Daten, Statusinformationen und das ursprüngliche Objekt, das die Anfrage ausgegeben hat.
Timeout: Die maximale Anzahl an Millisekunden, die gewartet werden soll. Wenn die Anfrage nach dieser Zeit nicht zurückgegeben wird, wird der Anfragestatus automatisch in „fehlgeschlagen“ geändert.
Fehler: Rückruffunktion, wenn die Anfrage fehlschlägt. Die Funktionsparameter sind das ursprüngliche Objekt, das die Anfrage ausgegeben hat, und die zurückgegebenen Statusinformationen.
vollständig: Eine Rückruffunktion, die unabhängig davon ausgeführt wird, ob die Anforderung erfolgreich ist oder fehlschlägt. Die Funktionsparameter sind das ursprüngliche Objekt, das die Anforderung ausgegeben hat, und die zurückgegebenen Statusinformationen.
Von diesen Parametern kann die URL unabhängig sein und als erster Parameter der Ajax-Methode verwendet werden. Mit anderen Worten, der obige Code kann auch wie folgt geschrieben werden.
Einfache Schreibmethode
Es gibt auch einige einfache Möglichkeiten, die Ajax-Methode zu schreiben.
$.get(): Stellen Sie eine GET-Anfrage.
$.getScript(): Liest eine JavaScript-Skriptdatei und führt sie aus.
$.getJSON(): Geben Sie eine GET-Anfrage aus, um eine JSON-Datei zu lesen.
$.post(): Stellen Sie eine POST-Anfrage.
$.fn.load(): Liest eine HTML-Datei und fügt sie in das aktuelle Element ein.
Im Allgemeinen akzeptieren diese praktischen Methoden drei Parameter der Reihe nach: URL, Daten und Rückruffunktion bei Erfolg.
(1)$.get(), $.post()
Diese beiden Methoden entsprechen der GET-Methode bzw. der POST-Methode von HTTP.
Die Ajax-Schreibmethode, die der obigen Post-Methode entspricht, ist wie folgt.
(2)$.getJSON()
Eine weitere einfache Möglichkeit, die Ajax-Methode zu schreiben, ist die getJSON-Methode. Wenn der Server Daten im JSON-Format zurückgibt, kann diese Methode anstelle der $.ajax-Methode verwendet werden.
(3)$.getScript()
Die Methode $.getScript wird verwendet, um eine Skriptdatei von der Serverseite zu laden.
Die Rückruffunktion von getScript akzeptiert drei Parameter: den Inhalt der Skriptdatei, die Statusinformationen der HTTP-Antwort und die Ajax-Objektinstanz.
(4)$.fn.load()
$.fn.load ist keine Tool-Methode von jQuery, sondern eine auf der jQuery-Objektinstanz definierte Methode, mit der die serverseitige HTML-Datei abgerufen und in das aktuelle Element eingefügt wird. Da diese Methode auch zur Ajax-Operation gehört, wird sie hier gemeinsam besprochen.
Ajax-Event
jQuery bietet die folgenden Methoden zum Angeben von Rückruffunktionen für bestimmte AJAX-Ereignisse.
.ajaxComplete(): Die Ajax-Anfrage ist abgeschlossen.
.ajaxError(): Ajax-Anfragefehler.
.ajaxSend(): bevor die Ajax-Anfrage ausgegeben wird.
.ajaxStart(): Die erste Ajax-Anfrage wird ausgegeben, d. h. es liegt noch keine Ajax-Anfrage vor, die abgeschlossen werden muss.
.ajaxStop(): Nachdem alle Ajax-Anfragen abgeschlossen sind.
.ajaxSuccess(): Nachdem die Ajax-Anfrage erfolgreich war.
Nachfolgend finden Sie Beispiele.
Rückgabewert
Die Ajax-Methode gibt ein verzögertes Objekt zurück, und Sie können die then-Methode verwenden, um eine Rückruffunktion für das Objekt anzugeben (ausführliche Erläuterungen finden Sie im Abschnitt „Verzögertes Objekt“).
JSONP
Aufgrund der „gleichen Domänenbeschränkung“ im Browser kann die Ajax-Methode nur HTTP-Anfragen an den Domänennamen der aktuellen Webseite stellen. Durch Einfügen eines Skriptelements (