jQuery – New Wave Javascript

Gestern bin ich auf die JavaScript-Bibliothek jQuery gestoßen. Im Allgemeinen sind JavaScript-Bibliotheken immer überladen, enthalten Funktionen die man nie braucht und sind oft so geschrieben, dass es nahezu unmöglich ist, sie zu erweitern außer man hat sie selbst geschrieben. Aber jQuery macht alles anders. Und jQuery ist klein. 13 Kilobyte hat das aktuelle Release - und das kommt mit Funktionen zur Manipulation des DOM, einem ausgewachsenen CSS-Selektor und XPath-Interpreter und einer Effektbibliothek daher. CSS und XPath können sogar zusammen verwendet werden. Eine AHAH-Erweiterung gibt es auch.

jQuery-Code ist so ganz anders als normaler JavaScript-Code. jQuery-Funktionen können nämlich verkettet werden:

$('#navigation > a[@href^="http"]').
    prepend('<img src="/exclamation.png" />').
    find('img:first').fadeIn('slow');

Dieses Skript sucht erstmal alle externen Links (deren href-Attribut mit http beginnt), die direkt innerhalb eines Elements mit der ID navigation sind, fügt in diese Links an erster Stelle ein Bild ein und blendet dieses Bild dann langsam ein.

Mit “herkömmlichem” JavaScript hätte das sicher mehr als diese Zeile Code gebraucht (die nur zur besseren Lesbarkeit in mehreren Zeilen geschrieben ist). Es gibt sogar Kontrollstrukturen, wie z.B. each, die die übergebene Funktion auf alle Objekte anwendet oder find(expression), dass man mit end() wieder abbrechen kann.

Diese ganze Bibliothek ist äußerst gut dokumentiert und wird aktiv entwickelt. Der Entwickler ist übrigens der selbe, der auch denn addEvent-Recoding-Contest gewonnen hat.