Facebook Connect, jQuery UI és jQuery.noConflict ()

szavazat
6

Próbálok építeni egy oldal az én személyes honlapján, hogy mind a használt jQueryés eszközök Facebook Connect.

Sajnos, a Facebook client APIhasználó $ token, ami azt jelenti, meg kell hívnijQuery.noConflict()

Dupla sajnos rájöttem, hogy néhány őrült okból, és Rick Strahl rámutat, jQuery UI nem tartja noConlict (). Egyáltalán. Sőt, ha megnézi a forráskód, van $s rajta.

Azt igazán szeretnék, hogy képes legyen használni jQuery UI - pontosabban, a dialog()komponens és draggablelenne igazán szép is - de én még moreso, nem akarom, hogy a kéz-szerkesztés - és tesztelését és karbantartását - a saját példányát bármely részének jQuery UI.

Ez a legújabb egy sor jak, amit meg kellett borotválni , amely nekem a tanácstalan végén. Valami javaslat? Segítség!

A kérdést 25/12/2008 00:24
a forrás felhasználó
Más nyelveken...                            


1 válasz

szavazat
18

Az üzenet, amit a hivatkozott elég régi és elavult. A 1.0megjelenése jQuery UIvolt ez a kérdés egy pár fájlt, és rögzítették, amint azt jelentették.

Minden jQuery UI csomagolva egy closure, amely átmegy a jQuery, mint $így használhatja $ belsőleg, míg $ használjuk másra külsőleg.

tól http://docs.jquery.com/Using_jQuery_with_Other_Libraries#Referencing_Magic_-_Shortcuts_for_jQuery

Használja a következő módszer, amely lehetővé teszi, hogy $ belsejében egy blokk kód nélkül tartósan felülírása $:

(function($) {
  /* some code that uses $ */
})(jQuery)

Megjegyzés: Ha ezt a technikát, akkor is használhatja Prototype keresztül window.$pl window.$('some_element_id'). Minden olyan funkció kívül a tokra, amely referenciák $meghívja Prototype, akkor is, ha az úgynevezett belülről a lezárás.

Ez az oka annak, meglátja $benne a jQuery UI fájlokat, de megnyugodhat, egyetlen újabb verziója jQuery UI (1.5+)teljesen támogatottjQuery.noConflict()

Válaszolt 25/12/2008 05:28
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more