JQuery.NoConflict()

Toda persona que ha programado Javascript utilizando JQuery reconoce el simbolo “$” como el alias utilizado para esta libreria, que desde mi punto de vista es un #epicwin (como se diria en Twitter), fácil y de lo más útil para poder implementar código JS sin preocuparnos por el navegador que utilize el cliente (a excepció algunas cosas con IE6, que no acaba de morir ¬¬).

Debemos tomar en cuenta que “$” (este simbolo) no es más que un alias para Jquery, la funcionalidad de esta puede ser asignada a cualquier variable dentro de nuestra programacion, a pesar de esto, es importante mencionar que este simbolo es por “default” en JQuery y que tambien es utilizado por otros frameworks js, como PROTOTYPEMOOTOLS y otros. Este alias en el caso de JQuery puede ser asignado a cualquier otra variable:

var j = jQuery.noConflict();

$.noConflict() es un metodo que asigna el control de los metodos especificos de este framework al alias JQuery y por lo tanto el tan conocido “$” podra ser utilizado por cualquier otra libreria que lo necesite. Esto es algo muy práctico al momento de solucionar problemas de compatibilidad o de ejecuccion de procesos erroneos por conflictos.

Un ejemplo de su utilizacion:

jQuery.noConflict();
// Para el trabajo con JQuery
jQuery("div p").hide();
// Otras librerias con alias S
$("content").style.display = 'none';
Compartir en:
  • Facebook
  • Twitter
  • FriendFeed
  • MySpace
  • PDF
  • email
  1. En principio es muy buena idea y muy buena práctica. Sin embargo habemos puristas como yo que preferimos usar solo jQuery y olvidarnos d emootools, protoype, dojo o similares.

    ¿Motivo? Que no todos los desarrolladores tienen buenas prácticas y hay plugins de jQuery muy buenos y bonitos, que no vienen preparados con el .noConflict(), lo cual genera automáticamente un error al contar con otro framework.

    Lo que queda es reescribir el plugin (que no es tan sencillo si viene minificado) o bien, usar solo jQuery, que es lo que yo hago.

  1. Aun no hay enlaces.

CAPTCHA image

Switch to our mobile site