Herrliche Neuigkeiten: eine neue jQuery Version ist erschienen!!! Man beachte den
Ein Artikel von Paul Lunow, erschienen 2009 auf Interaktionsdesigner.de.
Zuletzt überarbeitet am von
Denkst Du darüber nach zu gründen? Eine Familie oder ein Startup oder beides? In der zweiten Staffel meines Podcasts spreche ich mit tollen Menschen genau darüber. Lass Dich inspirieren und abonniere meinen Podcast: Auf Apple Podcast, Spotify und auf www.gründerväter.net.
Herrliche Neuigkeiten: eine neue jQuery Version ist erschienen!!! Man beachte den Blogbeitrag, die Release Notes und dann freuen über die neue, noch bessere Version. Die schönste Neuigkeit für mich ist die neue Funktionlive(). Schon Ewigkeiten wollte ich über das Plugin Livequery schreiben, welches die gleichen Funktionalitäten anbietet. Aber das hat sich jetzt erledigt. Mit der Funktion live() bindet man Events an Elemente, und zwar an alle Elemente. Das bedeutet auch an jene, welche per Ajax nachgeladen werden.
$("button").live("click", function() {
alert("Button "+$(this).attr("name")+" gedrückt!");
});
Mit diesem Code wird bei Klick auf einen Button eine Nachricht ausgegeben, auch wenn dieser dynamisch nachgeladen wurde. Wunderbar! Und noch eine “neue” Erkenntnis will ich niemanden vorenthalten: Der viel genutzte Ausdruck
$(document).ready(function() { /* alles geladen! los gehts */ });
ist gar nicht so gut! Ganz im Gegenteil, er ist sogar schlecht. Der Grund ist die Zusammenarbeit mit anderen JavaScript Frameworks, die eventuell auch gebrauch der Dollar-Funktion machen. Die Lösung ist zum Glück einfach:
jQuery(function($) { /* alles geladen, ohne Konflikte!!! */ });
Der Funktion jQuery wird eine individuelle Funktion übergeben. Diese kriegt das komplette Framework als Parameter übergeben - und der wird dann dem Dollar-Zeichen zugewiesen. Klingt komisch, ist aber so und verhindert lästige Fehlermeldung und Diskussionen mit Kollegen.