Jquery con otras bibliotecas

Febrero 16th, 2010 by jQuery | Posted under plugins.

La librería jQuery, y prácticamente todos sus plugins están limitados en el espacio de nombres jQuery. Como regla general, “global” los objetos son almacenados en el interior del espacio de nombres jQuery, así que usted no debería tener problemas entre jQuery y cualquier otra biblioteca (comoPrototype, MooTools, or YUI).

Dicho esto, hay una advertencia: Por defecto, usa jQuery “$”, como una abreviatura de “jQuery”

Reemplazando la funcion $

Sin embargo, se puede reemplazar ese defecto llamando jQuery.noConflict () en cualquier momento después de la biblioteca jQuery y otros dos cargados. Por ejemplo:
[cce lang="javascript"]
<html>
<head>
<script src=”prototype.js”></script>
<script src=”jquery.js”></script>
<script>
jQuery.noConflict();

// aqui usamos jquery con jQuery(…)
jQuery(document).ready(function(){
jQuery(“div”).hide();
});

// Aqui estariamos usando prototype $(…)
$(’someid’).hide();
</script>
</head>
<body></body>
</html>
[/cce]
Esta $ volverá de nuevo a su biblioteca original. Usted todavía podrá utilizar “jQuery” en el resto de su aplicación.

Además, hay otra opción. Si desea asegurarse de que jQuery no entrar en conflicto con otra biblioteca -, pero desea que el beneficio de un nombre corto, que podría hacer algo como esto:

[cce lang="javascript"]
<html>
<head>
<script src=”prototype.js”></script>
<script src=”jquery.js”></script>
<script>
var $j = jQuery.noConflict();

// Usa jQuery mediante $j(…)
$j(document).ready(function(){
$j(“div”).hide();
});

//  Y Prototype con $(…), etc.
$(’someid’).hide();
</script>
</head>
<body></body>
</html>
[/cce]

Usted puede definir sus propios nombres alternativos (por ejemplo, JQ, J $, sexyLib- todo lo que quieras).

Por último, si usted no desea definir otra alternativa para el nombre de jQuery (osea que realmente te gusta usar $ y no hay otra libreria que lo use), entonces todavía hay solución para usted. Esto es más frecuente en el caso de que usted todavía desea los beneficios de código jQuery realmente corto, pero no quiero causar conflictos con otras bibliotecas.

[cce lang="javascript"]

 <html>
 <head>
   <script src="prototype.js"></script>
   <script src="jquery.js"></script>
   <script>
     jQuery.noConflict();

     // Esto seria jQuery
     jQuery(document).ready(function($){
       // haz los conjuros aqui
       $("div").hide();
     });

     // Esto seria usando Prototype con $(...).
     $('someid').hide();
   </script>
 </head>
 <body></body>
 </html>
[/cce]

Por favor! jQuery se carga antes que otra librerias

Si se incluye jQuery antes de otras librerias, puede utilizar “jQuery” y el “$” se lo queda la que hayas cargado despues.

[cce lang="javascript"] <html>
 <head>
   <script src="jquery.js"></script>
   <script src="prototype.js"></script>
   <script>
     // Use jQuery via jQuery(...)
     jQuery(document).ready(function(){
       jQuery("div").hide();
     });

     // Use Prototype with $(...), etc.
     $('someid').hide();
   </script>
 </head>
 <body></body>
 </html>[/cce]

Referencia de la magia y lo esoterico – abreviaciones de jQuery

Transforma la larga y tediosa palabra “jQuery” por algo mas corto y sugerente como X

  • Cambia el $ por una j (oleeee)
    • [cce lang="javascript"]var $j = jQuery;[/cce]
    • (puede ser lo mas acertado si usas otras librerias)
  • Usa esto pero entro del bloque no podras usar prototype o lo que sea q tenga el dichosa $ !
    • [cce lang="javascript"]jQuery(function($) { /* algun codigo que use $ */ });[/cce]

Have any comments?

Spam Protection by WP-SpamFree Plugin