507 Stimmen

jQuery Tipps und Tricks

Syntax

Datenspeicherung

Optimierung

Sonstiges

1voto

btt Punkte 422

Der "endet mit"-Elementselektor eignet sich hervorragend für die Entwicklung von ASP.NET-Webformularen, da Sie sich nicht um die vorangestellte ctl00-Irritation kümmern müssen:

$("[id$='txtFirstName']");

Wie in den Kommentaren erwähnt, kann dieser Selektor (wie jede Abstraktionsebene) bei unvorsichtiger Verwendung langsam sein. Ziehen Sie es vor, den Selektor auf ein enthaltendes Element zu beschränken, z. B.,

$(".container [id$='txtFirstName']");

um die Anzahl der zu durchlaufenden Elemente zu verringern.

jQuery-Dokumentation

0voto

cllpse Punkte 20838

Konfliktfreier Modus

jQuery.noConflict();

"Führen Sie diese Funktion aus, um die Kontrolle über die $ Variable an die Bibliothek zurück, die sie zuerst implementiert hat. Dies hilft sicherzustellen, dass jQuery nicht in Konflikt mit der $ Objekt anderer Bibliotheken.

Wenn Sie diese Funktion verwenden, können Sie auf jQuery nur über die jQuery Variable. Zum Beispiel, wo Sie früher $("div p") müssen Sie nun Folgendes tun jQuery("div p") ".

0voto

adam Punkte 6254

Zeilenindex im Namen inkrementieren

Hier ist eine elegante Möglichkeit, den Zeilenindex eines geklonten Eingabeelements zu erhöhen, wenn der Name des Eingabeelements einen Zeilenindex enthält wie '0_row' :

$(this).attr('name', $(this).attr('name').replace(/^\d+/, function(n){ return ++n; }));

Der Name des geklonten Elements lautet nun '1_row'

0voto

cllpse Punkte 20838

Eine schamlose Werbung... Das jQuery-Vorlagen-Plugin: Implementierung komplexer Logik mit Render-Funktionen

Das neue jQuery-Vorlagen-Plugin ist großartig. Davon abgesehen, sind die doppelt geschwungenen Klammervorlagen-Tags sind nicht gerade mein Fall. In einer komplexeren komplexen Vorlage verdecken die Tags die Vorlagenauszeichnung, und die Implementierung von Logik über einfache if/else-Anweisungen hinaus ist eine Qual.

Nach dem Herumprobieren mit dem Plug-in ein paar Stunden herumgespielt hatte, begann mein Kopf zu schmerzen bei dem Versuch, das Markup in meiner Vorlage von den Millionen von doppelten geschweiften Klammern zu unterscheiden.

Also habe ich eine Aspirin genommen und mit der Arbeit begonnen. an einer Alternative

0voto

ngn Punkte 7412

Bindung an ein Ereignis und sofortige Ausführung des Ereignishandlers:

$('selector').bind('change now', function () { // bind to two events: 'change' and 'now'
    // update other portions of the UI
}).trigger('now'); // 'now' is a custom event

Das ist wie

function update() {
    // update other portions of the UI
}
$('selector').change(update);
update();

aber ohne die Notwendigkeit, eine separate benannte Funktion zu erstellen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X