Facebook Connect, jQuery UI y jQuery.noConflict ()

votos
6

Intento crear una página en mi sitio web personal que sea utilizada jQuerye implementada Facebook Connect.

Lamentablemente, Facebook client APIusa el $ token, lo que significa que tengo que llamarjQuery.noConflict()

Desafortunadamente, desafortunadamente, descubrí que por alguna razón loca y, como señala Rick Strahl, jQuery UI no respeta noConlict (). En absoluto. De hecho, si miras el código fuente, hay $s por todas partes.

Yo realmente quiero ser capaz de utilizar jQuery UI - específicamente, el dialog()componente, y draggablesería muy bueno también - pero más aún, no quiero tener que editar a mano - y probar y mantener - mi propia copia de cualquier parte de jQuery UI.

Este es el más reciente de una serie de yaks que he tenido que afeitarme, lo que me tiene a mi ingenio. ¿Alguna sugerencia? ¡Ayuda!

Publicado el 25/12/2008 a las 00:24
fuente por usuario
En otros idiomas...                            


1 respuestas

votos
18

La publicación a la que has hecho referencia es bastante antigua y está desactualizada. El 1.0lanzamiento jQuery UItuvo este problema en un par de archivos y se solucionó tan pronto como se informó.

Toda la interfaz de usuario de jQuery está envuelta en una closureque pasa en jQuery como $y, por lo tanto, puede usar $ internamente, mientras que $ se usa para otra cosa externamente.

Desde http://docs.jquery.com/Using_jQuery_with_Other_Libraries#Referencing_Magic_-_Shortcuts_for_jQuery

Use la siguiente técnica, que le permite usar $ dentro de un bloque de código sin sobrescribir permanentemente $:

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

Nota: Si se utiliza esta técnica, todavía se puede utilizar a través de prototipos window.$por ejemplo, window.$('some_element_id'). Cualquier función fuera de su cierre que $haga referencia invocará Prototype, incluso si se llama desde dentro de su cierre.

Es por eso que verá $dentro de los archivos jQuery UI, pero tenga la seguridad de que cualquier versión reciente de jQuery UI (1.5+)es completamente compatible conjQuery.noConflict()

Respondida el 25/12/2008 a las 05:28
fuente por usuario

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