jQuery es una bi­blio­te­ca de Ja­va­S­cri­pt de­sa­rro­lla­da en 2006 por el in­fo­r­má­ti­co John Resig y publicada bajo la licencia gratuita MIT (Ma­s­sa­chu­se­tts Institute of Te­ch­no­lo­gy). Esta bi­blio­te­ca ofrece numerosas opciones para la ma­ni­pu­la­ción de HTML y de CSS, para controlar eventos o para agilizar fu­n­cio­na­li­da­des de AJAX. Estas pueden uti­li­zar­se de manera sencilla in­te­gra­n­do jQuery en el código fuente HTML del proyecto web y co­n­tro­lá­n­do­lo con ayuda de de­te­r­mi­na­das funciones. jQuery ya forma parte de muchos fra­me­wo­r­ks para apli­ca­cio­nes web y de sistemas de gestión de co­n­te­ni­dos como Joomla!, WordPress o MediaWiki y no solo destaca por su enorme fu­n­cio­na­li­dad, sino también por la gran comunidad y su continuo de­sa­rro­llo, que son re­s­po­n­sa­bi­li­dad del equipo de jQuery.

¿Qué hay detrás de jQuery? Una in­tro­du­c­ción a las po­si­bi­li­da­des de la bi­blio­te­ca

jQuery facilita co­n­si­de­ra­ble­me­n­te la pro­gra­ma­ción con Ja­va­S­cri­pt, el lenguaje dinámico de scripts. Toda la bi­blio­te­ca jQuery consta de un único archivo Ja­va­S­cri­pt que contiene las funciones básicas DOM, AJAX, de eventos y de efectos. Con ello, la bi­blio­te­ca presenta una amplia co­m­pi­la­ción de secciones de programas con cuya ayuda se pueden editar los elementos de los proyectos web. De esta manera, puedes elegir objetos, por ejemplo, y modificar su aspecto (color, posición, etc.), algo que en principio también es posible con Ja­va­S­cri­pt, aunque resulta algo más complejo llevarlo a cabo.

Además, con jQuery también puedes responder a las acciones de tus usuarios gracias a la pro­gra­ma­ción co­n­tro­la­da de los elementos de la página web. Los usuarios pueden suscitar acciones pre­via­me­n­te definidas por medio del puntero del ratón o de la in­tro­du­c­ción de texto y reciben los co­n­te­ni­dos o ani­ma­cio­nes co­rre­s­po­n­die­n­tes. Los efectos gráficos, como los que tienen que ver con añadir textos, etc., se llevan a cabo rá­pi­da­me­n­te y tan solo in­se­r­ta­n­do una única línea de código, de modo que jQuery facilita el trabajo con AJAX. La bi­blio­te­ca optimiza la te­c­no­lo­gía que recarga los co­n­te­ni­dos actuales en un segundo plano, sobre todo porque ostenta una interfaz in­de­pe­n­die­n­te de navegador. Con su ayuda, la técnica AJAX puede uti­li­zar­se y co­n­fi­gu­rar­se para todo tipo de na­ve­ga­do­res y es incluso co­m­pa­ti­ble con versiones de na­ve­ga­do­res antiguas. En general, jQuery llena los diversos vacíos que hay entre las di­fe­re­n­tes im­ple­me­n­ta­cio­nes de Ja­va­S­cri­pt de cada uno de los na­ve­ga­do­res.             

Cómo ampliar la es­tru­c­tu­ra de jQuery con plugins

El motivo de que jQuery sea una opción in­te­re­sa­n­te para los proyectos web actuales reside pri­n­ci­pa­l­me­n­te en la sencilla capacidad de am­plia­ción de esta bi­blio­te­ca de Ja­va­S­cri­pt. Los miles de plugins que si­m­pli­fi­can su pro­gra­ma­ción y que co­n­vie­r­ten a jQuery en una bi­blio­te­ca todavía más poderosa se pueden descargar, en su mayoría de manera gratuita, desde la página web oficial de jQuery. En este sentido, tanto su gran extensión como su amplia comunidad son muy im­po­r­ta­n­tes, puesto que tienen un papel decisivo en el de­sa­rro­llo de dichas ex­te­n­sio­nes. Si la función deseada no está incluida en la versión estándar y tampoco está di­s­po­ni­ble como plugin, los de­sa­rro­lla­do­res con ex­pe­rie­n­cia pueden intentar crear su propia extensión.

¿Cómo se integra la bi­blio­te­ca de Ja­va­S­cri­pt?

Para poder usar jQuery en tu proyecto, el primer paso es integrar la bi­blio­te­ca. A este respecto, tienes la po­si­bi­li­dad de alojar el archivo Ja­va­S­cri­pt en tu propio espacio web o bien es­ta­ble­cer un enlace en un espacio web externo. Si optas por la primera opción, puedes descargar el archivo desde el centro de descargas de la página web de jQuery. En dicha página tienes la po­si­bi­li­dad de elegir la versión co­m­pri­mi­da para las apli­ca­cio­nes en vivo (co­m­pre­s­sed, pro­du­c­tion jQuery) y la edición no co­m­pri­mi­da para de­sa­rro­lla­do­res (un­co­m­pre­s­sed, de­ve­lo­p­me­nt jQuery). Para guardar lo­ca­l­me­n­te el archivo co­rre­s­po­n­die­n­te, con el botón derecho del ratón haz clic en el enlace, elige “Guardar destino como” e introduce el destino deseado. Para terminar, escribe el enlace co­rre­s­po­n­die­n­te en la etiqueta <head> de tu página web: 

<head>
    <script type="text/javascript" src="pfad_a_archivo_ jquery /jquery.js"></script>
</head>

Si, por el contrario, te decides por instalar el archivo de manera externa, debes adaptar la re­fe­re­n­cia en el header. Para poder utilizar el arhivo jQuery del servicio Google Hosted Libraries, introduce la siguiente dirección incluida la versión co­rre­s­po­n­die­n­te como elemento fuente (src) en el siguiente enlace 3.0.0:

http://ajax.googleapis.com/ajax/libs/jquery/3.0.0/jquery.min.js

Así se construye la sintaxis de jQuery

Con el código jQuery puedes acceder a los elementos HTML de tu proyecto web. Puedes se­le­c­cio­nar estos elementos por medio de un selector orientado si­n­tá­c­ti­ca­me­n­te a se­le­c­to­res CSS. A esto le sigue, ge­ne­ra­l­me­n­te, una acción que describe de qué manera se debe modificar el elemento se­le­c­cio­na­do. El símbolo del dólar ($) se antepone al selector y a la acción para di­s­ti­n­guir el código como función jQuery. Esto ocurre para evitar co­n­fu­sio­nes cuando se utilizan di­fe­re­n­tes bi­blio­te­cas. El símbolo $() actúa como abre­via­tu­ra para la función de jQuery (). La sintaxis básica tiene la siguiente apa­rie­n­cia:

$(Selector).Acción()

Una línea de código esencial que debe in­co­r­po­rar cualquier de­s­cri­p­ción de jQuery en su documento HTML es el evento document ready. Este código garantiza que todos los comandos que contiene se eje­cu­ta­rán después de que todos los elementos HTML se hayan cargado. Por una parte, se evitarán los mensajes de error cuando, por ejemplo, haya que ocultar algún elemento que todavía no se haya mostrado. Por otra, el evento document ready ofrece la po­si­bi­li­dad de insertar el código en la etiqueta <head>. A la es­tru­c­tu­ra si­n­tá­c­ti­ca de la línea de código me­n­cio­na­da le co­rre­s­po­n­de el siguiente patrón:

<script type="text/javascript">
    $(document).ready(function(){
        //código jQuery adicional
    });
</script>

Los se­le­c­to­res más im­po­r­ta­n­tes

Los se­le­c­to­res de jQuery son los co­m­po­ne­n­tes más im­po­r­ta­n­tes de la bi­blio­te­ca de Ja­va­S­cri­pt y con ellos puedes adaptar los elementos más diversos de tu página web. Además, hay di­fe­re­n­tes tipos de se­le­c­to­res que permiten encontrar y se­le­c­cio­nar unidades HTML en función de criterios como ide­n­ti­fi­ca­dor, clase, tipo, etc. El selector element, utilizado con fre­cue­n­cia, se encarga de cla­si­fi­car cada acción en los elementos HTML a partir de su nombre. De esta manera, el siguiente código jQuery te permite, por ejemplo, definir que se oculten todos los elementos <p>, es decir, todos los bloques de texto, cuando el visitante de la página web haga clic en un botón:

<script type="text/javascript">
    $(document).ready(function(){
        $("button").click(function(){
            $("p").hide();
        });
    });
</script>

Otro de los se­le­c­to­res im­po­r­ta­n­tes de jQuery es #id. Con él puedes destacar un único elemento en el documento HTML, que después y, por ejemplo, con Ja­va­S­cri­pt podrá mo­di­fi­car­se tal y como se llevan a cabo las ma­ni­pu­la­cio­nes en CSS. En caso de que no se oculten todos los bloques de texto cuando el usuario haga clic en un botón, sino que solo ataña a uno en concreto, deberás insertar un valor id para este elemento <p> ((<p id="testblock">) y añadir el selector element en el ejemplo de código anterior por medio del selector #id:

<script type="text/javascript">
    $(document).ready(function(){
        $("button").click(function(){
            $("#testblock").hide();
        });
    });
</script>

Un tercer selector sencillo es .class, que se­le­c­cio­na clases pre­de­fi­ni­das y que se im­ple­me­n­ta también según el conocido método. Otros de los se­le­c­to­res más útiles son:

Selector De­s­cri­p­ción
$("*") Se­le­c­cio­na todos los elementos
$(this) Se­le­c­cio­na el elemento actual
$("p:first") Se­le­c­cio­na el primer elemento <p>
$("ul li:first-child") Se­le­c­cio­na los primeros elementos de lista <li> de todas las listas <ul> exi­s­te­n­tes
$("[href]") Se­le­c­cio­na todos los elementos que contengan un atributo href
$("tr:even") Se­le­c­cio­na todas las líneas de tabla pares
$("tr:odd") Se­le­c­cio­na todas las líneas de tabla impares
$("p.intro") Se­le­c­cio­na todos los elementos <p> con la clase class="intro"

Po­si­bi­li­dad de responder a las acciones de los usuarios con jQuery

Los usuarios que visitan tu página o tu apli­ca­ción web in­ter­ac­túan de muchas maneras con tu proyecto, ya sea por medio de un clic de ratón, de una entrada de teclado, re­lle­na­n­do un fo­r­mu­la­rio o agra­n­da­n­do una ventana. Estas acciones son también conocidas como eventos DOM y pueden definirse en jQuery como elementos des­en­ca­de­na­n­tes de acciones.

Por ejemplo, puedes utilizar el mo­vi­mie­n­to del puntero del ratón como elemento des­en­ca­de­na­n­te de una acción, lo que tendría lugar por medio de mou­see­n­ter() o mou­se­lea­ve(). La primera función reacciona cuando el usuario desplaza el cursor del ratón sobre el elemento HTML se­le­c­cio­na­do. La segunda, por su parte, entra en acción cuando el cursor del ratón se aleja del elemento. El siguiente código jQuery muestra al usuario una ventana de diálogo in­fo­r­ma­ti­va cuando este señala con el puntero del ratón un bloque de texto:

<script type="text/javascript">
    $(document).ready(function(){
        $("p").mouseenter(function(){
            alert("Has seleccionado un bloque de texto");
        });
    });
</script>

Otros elementos des­en­ca­de­na­n­tes im­po­r­ta­n­tes son:

Elementos des­en­ca­de­na­n­tes De­s­cri­p­ción
focus() Se acciona al centrarse en un elemento (por clic de ratón o etiqueta)
blur() Se acciona al dejar de centrarse en un elemento
keydown() Se acciona cuando se mantiene una tecla pulsada
keyup() Se acciona cuando se suelta una tecla
change() Se acciona cuando tiene lugar una entrada de teclado o cuando se hace una selección
scroll() Se acciona cuando uno se desplaza por el elemento se­le­c­cio­na­do
select() Se acciona cuando se marca un texto en el campo del fo­r­mu­la­rio

Con ayuda de on() podrás, además, añadir más de un elemento des­en­ca­de­na­n­te a un elemento se­le­c­cio­na­do y combinar, así, di­fe­re­n­tes acciones de manera sencilla. Con el siguiente código jQuery puedes hacer, por ejemplo, que el color de fondo de los elementos <p> varíe tanto cuando los usuarios lo se­le­c­cio­nen (blue), como cuando estos vuelvan a elegirlo (red) o a hacer clic en él (yellow):

<script type="text/javascript">
    $("p").on({
        mouseenter: function(){
            $(this).css("background-color", "blue");
         }, 
        mouseleave: function(){
             $(this).css("background-color", "red");
        }, 
        click: function(){
            $(this).css("background-color", "yellow");
        } 
    }); 
</script>

Para obtener in­fo­r­ma­ción más detallada sobre la paleta de funciones de la bi­blio­te­ca de Ja­va­S­cri­pt en su totalidad en co­m­bi­na­ción con la te­c­no­lo­gía AJAX, es re­co­me­n­da­ble recurrir al manual de jQuery en inglés en w3schools.com, que pone a di­s­po­si­ción una gran cantidad de ejemplos del código de la bi­blio­te­ca de Ja­va­S­cri­pt. Hasta el momento jQuery no está di­s­po­ni­ble en español.        

Ir al menú principal