
Der nette Veit wies mich gerade darauf hin das soeben mein lieblings Javascript-Framework jQuery endlich in Version 1.2 veröffentlicht wurde.
Mit dem Versionssprung sind auch einige Neuerungen einhergegangen. Eine ganze Hand voll neuer Selektoren, Attribute und auch Effekten hat den Weg in die neue Version gefunden.
XPath-Selektoren wurden sofern ich das herauslesen kann nun aus jQuery 1.2 herausgelöst und werden optional als separates Plugin angeboten.
Ein neuer Effekt ist z.B. die Color Animation wodurch sich sehr einfach Farbübergänge zaubern lassen. Mit dem Effekt können derzeit folgende CSS-Properties animiert werden:
backgroundColor, borderBottomColor, borderLeftColor, borderRightColor, borderTopColor, color, outlineColor.
In der Ajax-Funktionalität wurde nun alles auf die große $.ajax()-Funktion ausgelegt, die seit längerem schon alle separaten Ajax-Funktionen in einer vereint. Die bisher als deprecated markierten Funktionen (wie z.B. loadIfModified()) wurden nun aus dem Core entfernt, wodurch es bei älteren Scripten evtl. zu Fehlern kommen könnte. Kurzzeitige Abhilfe schafft da das jQuery 1.1 Compatibility Plugin.
Mit dem Update ist das Framework leider wieder ein wenig gewachsen und zwar auf nun mehr 26 Kilobyte in gepackter Form. Immerhin mal wieder ein Sprung um 4 Kilobyte. Um dem entgegen zu wirken wurde nun auf einen Beitrag von Julien Lecomte hingewiesen, indem beschrieben wird wie man mit ein wenig PHP bzw. dem GZip-Modul jQuery mit nur noch 14 Kilobyte ausliefern kann. Ich habe dieses “Verfahren” schon bei einigen Seiten in Gebrauch und dabei bisher keine Nachteile erlebt.
Wer generell all seine .JS und evtl. auch .CSS-Dateien in gepackter Form ausliefern möchte sollte sich evtl. den Blogpost Compressing Javascript with PHP anschauen. Dort wird beschrieben wie man mit Hilfe von PHP, GZip und mod_rewrite generell all seine Javascript-Dateien über das GZip-Modul ausliefern lassen kann.
Kommentare zum Thema jQuery 1.2 veröffentlich:
Ja, bei vielen Usern belastet das doch sehr. Allerdings wird in dem Beispiel von Julien ein Script mit Caching-Funktion und expires-Header zum Download bereit gestellt. Dann hängt es ja auch noch davon ab was man alles GZiped und wie groß die Dateien sind. Ein JS mit 600KB zu Zippen wird wohl länger dauern als ein jQuery mit 26Kb. Grafiken zu Gzippen ist aus meiner Sicht auch nicht wirklich lohnenswert. Es erhöht die Serverlast und bringt bei JPG und GIF im Normallfall überhaupt nix.
Also realisierbar ist das schon, man muss halt nur schauen wie groß das Projekt ist und um welche Dateimengen es sich handelt.
ich würde sogar soweit gehen und die css und js dateien schon feritg als gzip gepackt hochladen
so das der server nur noch stur ausliefern muss
richtige header setzen halt auch noch
Joshua Eichorn hat eine gute Anleitung(1) in seinem Blog geschrieben. Gleich mit Rückfall Lösung falls der Client kein GZip kann, was heute aber eher unwahrscheinlich ist.
Kommentar-Feed für diesen Artikel
Neuer Freefont aus der Feder von Jos Buivenga Runde Ecken mit Javascript - Die perfekte Lösung

Es ist aber anzumerken, dass eine Komprimierung von dateien den Server erheblich belastet, hatte das ganze mal mit dem gut konfigurierten Apache getestet und der Server ging bei 5 Benutzern, die Bilder komprimiert geladen haben, fast in die Knie :)
Solche Aktionen sollten umbedingt vorher getestet werden, gerade bei kommerziellen Projekten.