Latest web development tutorials

jQuery.Callbacks () -Methode

jQuery Misc Methoden jQuery Misc Methoden

Beispiele

Fügen Sie eine Callback-Funktion in die Liste der $ .Callbacks

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert );} Funktion Fn2 ( Wert ) { FN1 ( "fn2 sagt:" + value); return false;} var Rückrufe = $ Rückrufe () ;. . Rückrufe hinzufügen ( fn1 ); // Ausgabe: foo! Rückrufe. Feuer ( "Foo" ) ;. Rückrufe hinzufügen ( Fn2 !); // Ausgabe: bar, fn2 sagt: bar! Rückrufe. Feuer ( "Bar!" );})

Versuchen »

Definition und Verwendung

$ .Callbacks () Bezieht sich auf eine Mehrzweckrückrufliste von Objekten, eine effektive Methode, die Callback-Funktion Spalte rechts zu verwalten.

Tipp: $ .Callbacks in jQuery für den internen Gebrauch, wie .ajax, Latente $ und andere Komponenten bieten Funktionen für die Grundfunktionalität. Es kann auch in einigen Komponenten ähnliche Funktion verwendet werden, wie beispielsweise ihre eigenen Plug-ins zu entwickeln.


Grammatik

$.Callbacks( flags )

参数 描述
flags 可选。 String类型 一个用空格标记分隔的可选列表,用来改变回调列表中的行为


Beispiele

Weitere Beispiele

Hier ist .remove () einen spezifischen Rückruf von den Rückrufliste Beispiele zu entfernen

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert );} Funktion Fn2 ( Wert ) { FN1 ( "fn2 sagt:" + value); return false;} var Rückrufe = $ Rückrufe () ;. . Rückrufe hinzufügen ( fn1 ); // Ausgabe: foo! Rückrufe. Feuer ( "Foo" ) ;. Rückrufe hinzufügen ( Fn2 !); // Ausgabe: bar, fn2 sagt: bar! Rückrufe. Feuer ( "Bar!" ) ;. Rückrufe entfernen ( Fn2 ); // Ausgabe nur foobar, fn2 wurde entfernt. Rückrufe. Feuer ( "Foobar" );})

Versuchen »


Unterstützte Parameter Flags

Der Parameter flags ist $ .Callbacks () ist ein optionaler Parameter, die die Struktur eines durch Leerzeichen getrennte Fähnchen gekennzeichnet optionale Liste, die Rückrufliste Verhalten zu ändern (z. B. $ .Callbacks ( 'Einzigartige stopOnFalse')).
Im Folgenden sind die verfügbaren Flags:

参数 描述
once 确保这个回调列表只执行一次
memory 缓存上一次fire时的参数值,当add()添加回调函数时,直接用上一次的参数值立刻调用新加入的回调函数
unique 确保一次只能添加一个回调,不会重复添加
stopOnFalse 某个回调函数返回false之后中断后面的回调函数

Hier ist ein Beispiel $ .Callbacks ( "einmal") von

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert );} Funktion Fn2 ( Wert ) { FN1 ( "fn2 sagt:" + value); return false;} var Rückrufe = $. Rückrufe ( "Once" ) ;. Rückrufe hinzufügen ( fn1 ) ;. Rückrufe Feuer ( "Foo" ) ;. Rückrufe hinzufügen ( Fn2 ) ;. Rückrufe Feuer ( "Bar" ) ;. Rückrufe entfernen ( Fn2 ) ;. Rückrufe Feuer ( "Foobar" ); / * Ausgabe nur: foo * / })

Versuchen »

Hier ist ein Beispiel $ .Callbacks ( "Gedächtnis") von

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert );} Funktion Fn2 ( Wert ) { FN1 ( "fn2 sagt:" + value); return false;} var Rückrufe = $. Rückrufe ( "Memory" ) ;. Rückrufe hinzufügen ( fn1 ) ;. Rückrufe Feuer ( "Foo" ) ;. Rückrufe hinzufügen ( Fn2 ) ;. Rückrufe Feuer ( "Bar" ) ;. Rückrufe entfernen ( Fn2 ) ;. Rückrufe Feuer ( "Foobar" ); / * Ausgabe: foo fn2 sagt: foo bar fn2 sagt: bar foobar * / })

Versuchen »

Hier ist ein Beispiel $ .Callbacks ( "unique") von

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert );} Funktion Fn2 ( Wert ) { FN1 ( "fn2 sagt:" + value); return false;} var Rückrufe = $. Rückrufe ( "Unique" ) ;. Rückrufe hinzufügen ( fn1 ) ;. Rückrufe Feuer ( "Foo" ) ;. Rückrufe hinzufügen ( fn1 ); // Wiederholen Sie zusätzlich Rückrufe. add ( Fn2 ) ;. Rückrufe Feuer ( "Bar" ) ;. Rückrufe entfernen ( Fn2 ) ;. Rückrufe Feuer ( "Foobar" ); / * Ausgabe: foo bar fn2 sagt: bar foobar * / })

Versuchen »

Hier ist ein Beispiel $ .Callbacks ( "stopOnFalse") von

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert ); Return false;} Funktion Fn2 ( Wert ) { FN1 ( "Fn2 sagt:" + Wert ); Return false;} var Rückrufe = $. Rückrufe ( "StopOnFalse" ) ;. Rückrufe hinzufügen ( fn1 ) ;. Rückrufe Feuer ( "Foo" ) ;. Rückrufe hinzufügen ( Fn2 ) ;. Rückrufe Feuer ( "Bar" ) ;. Rückrufe entfernen ( Fn2 ) ;. Rückrufe Feuer ( "Foobar" ); / * Ausgabe: foo bar foobar * / })

Versuchen »

$ .Callbacks () Unterstützt eine Liste aus einer Vielzahl von Fahnen (Identifikation) nicht nur eine, es gibt eine kumulative Wirkung, wie "&&."
Hier ist ein Beispiel $ .Callbacks ( 'einzigartige Gedächtnis') von

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert ); Return false;} Funktion Fn2 ( Wert ) { FN1 ( "Fn2 sagt:" + Wert ); Return false;} var Rückrufe = $. Rückrufe ( "Unique memory" ) ;. Rückrufe hinzufügen ( fn1 ) ;. Rückrufe Feuer ( "Foo" ) ;. Rückrufe hinzufügen ( fn1 ); // Wiederholen Sie zusätzlich Rückrufe. add ( Fn2 ) ;. Rückrufe Feuer ( "Bar" ) ;. Rückrufe hinzufügen ( Fn2 ) ;. Rückrufe Feuer ( "Baz" ) ;. Rückrufe entfernen ( Fn2 ) ;. Rückrufe Feuer ( "Foobar" ); / * Ausgabe: foo fn2 sagt: foo bar fn2 sagt: bar baz fn2 sagt: baz foobar * / })

Versuchen »

$ .Callbacks Verfahren kann auch getrennt werden, beispielsweise:

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert );} var ... Rückrufe = $ Rückrufe ( ), fügen = Rückrufe hinzufügen, entfernen = Rückrufe zu entfernen, Feuer = Rückrufe Feuer ;. hinzufügen ( fn1 ); Fire ( "Hallo Welt" ); Entfernen ( fn1 ); / * Ausgabe: Hallo Welt * / })

Versuchen »


$ .Callbacks, $ .Deferred Und Pub / Sub

Die allgemeine Idee pub / sub (Beobachter-Muster) hinter lose Kopplung und effiziente Kommunikation für Ihre Anwendung. Beobachter auch als Teilnehmer bekannt, die zu dem beobachteten Objekt zeigt. Benutzer benachrichtigen, wenn ein Beobachter (Publisher) Ereignis eintritt.

Wie $ .Callbacks () eine Präsentationskomponente zu erstellen, nur die Callback-Funktion Liste können Sie Pub / Sub-System zu erreichen. Die $ .Callbacks Artikel als Warteschlange kann auf die folgende Art und Weise durchgeführt werden, um den Artikel zu veröffentlichen und abonnieren Sie erreichen:

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert ); Return false;} Funktion Fn2 ( Wert ) { FN1 ( "Fn2 sagt:" + Wert ); Return false;} var Themen = {} ;. jQuery Topic = function ( Identifikation ) { var Rückrufe, Methode Thema = id && Themen [ Identifikation ] : Wenn diese (! Topic ) { . Rückrufe = jQuery Rückrufe (); Thema = { veröffentlichen: Rückrufe Feuer, abonnieren :. Rückrufe hinzufügen, abmelden :. Rückrufe entfernen. }; Wenn ( Identifikation ) { Themen [ Identifikation ] = Thema;} } Rückkehr Thema;} // Abonnenten $. Thema ( "MailArrived" ). Abonnieren ( fn1 ) ;. $ Thema ( "MailArrived" ). Abonnieren ( Fn2 ) ;. $ Thema ( "MailSent" ). Abonnieren ( fn1 ); // Verlag $. Thema ( "MailArrived" ). Veröffentlichen ( "Hallo Welt!" ) ;. $ Thema ( "MailSent" ). Veröffentlichen ( "Woo! Mail an !" ); / * Ausgabe: Hallo Welt fn2 sagt: Hallo Welt Mail * woo / !!!! })

Versuchen »

Ferner die Verwendung von $ .Deferreds zu verbessern, können Sie sicherstellen, dass, wenn eine bestimmte Aufgabe (oder aufgelöst werden können) abgeschlossen ist, der Verlag nur eine Mitteilung an die Abonnenten ausgegeben. Siehe den folgenden Beispielcode:

Beispiele

$ (Funktion () { Funktion FN1 ( Wert ) { alert ( Wert ); Return false;} Funktion Fn2 ( Wert ) { FN1 ( "Fn2 sagt:" + Wert ); Return false;} var Themen = {} ;. jQuery Topic = function ( Identifikation ) { var Rückrufe, Methode Thema = id && Themen [ Identifikation ] : Wenn diese (! Topic ) { . Rückrufe = jQuery Rückrufe (); Thema = { veröffentlichen: Rückrufe Feuer, abonnieren :. Rückrufe hinzufügen, abmelden :. Rückrufe entfernen. }; Wenn ( Identifikation ) { Themen [ Identifikation ] = Thema;} } Rückkehr Thema;} // Abonnieren mailArrived Ankündigung $. Thema ( "MailArrived" ). Abonnieren ( fn1 ); // Erstellen Sie ein neues Objekt alternative Verzögerung $ .Deferreds var . Dfd = $ Latente (); // einen neuen Artikel definieren (nicht direkt freigeben) var Thema = $. Thema ( "MailArrived" ); // Wenn die Verzögerung akzeptiert, eine Ansage an die Abonnenten dfd. Fertig ( Thema. veröffentlichen ); / * Wird hier wieder auf die Teilnehmernachrichtenverzögerung wird angenommen weitergegeben werden, ist es möglich , die komplexen Verfahren (zum Beispiel wartet auf ein Ajax - Aufruf abgeschlossen ist), so in der Tat nur einmal die Nachricht freigegeben zu integrieren. * / // Abgeschlossen. dfd. auflösen ( "Ich habe veröffentlicht!" );})

Versuchen »


jQuery Misc Methoden jQuery Misc Methoden