Die Selektoren von jQuery erweitern

Ich bin über einen recht interessanten Artikel im Blog von James Padolsey gestolpert, der nachhaltig Arbeit einsparen kann, insofern man jQuery verwendet. Die Selektoren von jQuery sind ja bereits hinreichlich bekannt, wie zum Beispiel :first-child und :last-child. Lustigerweise zeigt die Praxis, dass man gerade den Selektor verwenden möchte, den jQuery gerade nicht anbietet. Man kann zwar auch ohne Selektoren auf die Elemente zugreifen, aber dies ist in der Regel aufwendig und was noch viel wichtiger ist: Es verlangsamt den verwendeten Code.

Screenshot von James Padolseys Blog

James zeigt in seinem Blog allerdings, das es ziemlich einfach ist eigene Selektoren zu schreiben:

$.extend($.expr[':'],{
   inline: function(a) {
      return $(a).css('display') === 'inline';
   }
});

Fügt dem System den neuen Selektor :inline hinzu, der dann ganz normal angewendet werden kann:

$(':inline'); // Selects ALL inline elements
$('a:inline'); // Selects ALL inline anchors

Das spart jede Menge Arbeit und hält den Code übersichtlich, eine feine Sache, wie ich finde vor allem wenn man sich eine Bibliothek häufig verwendeter Selektoren anlegt, die jQuery dummerweise nicht anbietet.

Ähnliche Beiträge

Zeitleisten mit Timeglider für jQuery In meiner letzten Firma habe ich viel für eine Branche gearbeitet, die Wert darauf legte ihren Kunden zu vermitteln, das ihr Produkt mindestens seit d...
In jQuery Existenz prüfen Das praktische an jQuery ist (unter anderem) das es Aktionen auf ein Element nur dann ausführt, wenn das Element existiert. Wenn es nicht existiert: P...
HTML5 File Uploads HTML5 besteht aus ein wenig mehr als dem Canvas-Element, und vor allem aus den neuen Formular-Elementen. Gleichwohl fängt man sich mit den neuen Eleme...
Mit Repo.js GitHub-Repositories in die eigene Seit... GitHub ist eine echt feine Sache, ich habe trotz der recht interessanten Preisgestaltung erst vor kurzem auf einen Premium-Account gewechselt. Es mach...

Eine Antwort auf „Die Selektoren von jQuery erweitern“

  1. Danke für den interessanten Ansatz, ich mag solche effizienten Lösungen. Spart mir bestimmt Arbeit, wenn ich mal wieder selbst etwas in jQuery machen muss.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.