Guia JQuery Inces
Guia JQuery Inces
1. Introducción a jQuery:
jQuery es un framework JavaScript libre y Open Source, del lado cliente, que se centra en la
interacción entre el DOM, JavaScript, AJAX y Html. El objetivo de esta librería JavaScript es simplificar
los comandos comunes de JavaScript. De hecho, el lema de jQuery es «Escribir menos para hacer más»
(Write less, do more).
jQuery fue creada inicialmente por John Resig y nos permite de una manera sencilla y eficiente:
Acceder a elementos en un documento.
Modificar la apariencia de una web.
Alterar el contenido de un documento.
Responder a una interacción del usuario.
Animar cambios en un documento.
Recoger información del servidor sin refrescar la página.
Tareas diversas de Javascript.
Además nos permite hacerlo sin tener que preocuparnos más por las diferencias entre
navegadores, como pasa en muchas ocasiones si utilizamos directamente Javascript.
1
1.2. ¿Cómo utilizar jQuery?:
Para aprovechar las bondades de jQuery en un documento html, se debe contar con:
La librería JQuery descargada.
Un editor de texto como NotePad, NotePad++ o WordPadm en Windows; en Linux puedes usar G-
Edit. También puede utilizar otros editores orientados al desarrollo web como Netbeans, Sublime Text
y herramientas WYSIWYG como Adobe Dreamweaber.
-------- o --------
jQuery(function(){
//contenido que se ejecuta cuando se carga el documento
});
Para ahorrar pulsaciones del teclado, se utiliza casi siempre el signo dólar ($), que funciona como
alias de jQuery:
$(function(){
//contenido externo que se ejecuta cuando se cargue el documento
});
<script>
$(document).ready(function() {
// código jQuery
});
</script>
2
Es decir, crear un objeto jQuery ($) a partir del documento (document), cuando esté preparado
(ready).
La particularidad de esta función es que carga los elementos del DOM tan pronto como estén
disponibles, es decir, antes de la carga completa de la página.
Esta función de jQuery le diferencia del JavaScript clásico. Por ejemplo, éste usa el clásico
window.onload = function(), que espera a que la página y todos los elementos que contiene estén
completamente cargados. Esto puede ser muy largo, especialmente cuando hay imágenes con un
tamaño importante. Es una particularidad esencial de jQuery que se basa, recordemos, de manera nativa
en los elementos del DOM.
Este modo de funcionamiento presenta muchas ventajas:
Todos los elementos de la página están incluidos en un objeto que los selectores, los métodos y las
funciones de jQuery pueden manejar.
El código Html está desprovisto de cualquier mención JavaScript, como por ejemplo las notaciones
<a href="javascript:void(0);">enlace </a>. Todo el código JavaScript/jQuery se sitúa en
una parte separada de la página Html (entre las etiquetas <head>..</head>) o en un archivo js
externo, lo que respeta completamente el principio de separación del contenido y de la presentación.
-------- o --------
3. Los selectores:
Los selectores básicos de jQuery no son más que una reformulación de los métodos
getElementById, getElementsByClassName y getElementsByTagName de JavaScript tradicional.
La notación de jQuery tiene la ventaja de ser más concisa y mucho más intuitiva.
3
El siguiente es el código jQuery:
$(document).ready(function() {
$("#boton1").click(function(){
$("p").text("Uno");
});
$("#boton2").click(function(){
$("div p").text("Dos");
});
$("#boton3").click(function(){
$("div").text("Tres");
});
$("#boton4").click(function(){
$("div,p").text("Cuatro");
});
});
<form>
<div class="form-group">
<label for="nombre">Nombre:</label>
<input type="text" class="form-control" id="nombre" placeholder="Nombre">
</div>
<div class="form-group">
<label for="apellido">Apellido:</label>
<input type="text" class="form-control" id="apellido"
placeholder="Apellido">
</div>
</form>
<button type="button" class="btn btn-primary" id="bt_asignar">Asignar</button>
<button type="button" class="btn btn-primary" id="bt_cambiar">Cambiar</button>
<button type="button" class="btn btn-primary" id="bt_limpiar">Limpiar</button>
$(document).ready(function() {
$("#bt_asignar").click(function(){
$("#nombre").val("Vladimir");
$("#apellido").val("Gude");
});
$("#bt_cambiar").click(function(){
var nombre = $('#nombre').val();
var apellido = $('#apellido').val();
$("#nombre").val(apellido);
$("#apellido").val(nombre);
});
$("#bt_limpiar").click(function(){
$("#nombre,#apellido").val("");
});
});
4
3.3. Selección por clase (class):
$(document).ready(function() {
$("#boton1").click(function(){
$(".texto").text("Uno");
});
$("#boton2").click(function(){
$("p.texto").text("Dos");
});
$("#boton3").click(function(){
$("div p.texto").text("Tres");
});
$("#boton4").click(function(){
$("p.texto,div.texto").text("Cuatro");
});
});
-------- o --------
5
4. Los métodos:
Um método tiene la siguiente sintaxis:
$("elemento").metodo();
$(document).ready(function() {
$("#bt_text").click(function(){
var un_texto = $("#parrafo").text();
alert("Text: " + un_texto);
});
$("#bt_html").click(function(){
var un_html = $("#parrafo").html();
alert("Html: " + un_html);
});
$("#bt_val").click(function(){
var un_valor = $("#cedula").val();
alert(un_valor);
});
});
-------- o --------
6
4.2. El método attr:
<form>
<div class="form-group">
<label for="nombre">Nombre:</label>
<input type="text" class="form-control" id="nombre" placeholder="Nombre">
</div>
</form>
<button type="button" class="btn btn-primary" id="activar">Activar</button>
<button type="button" class="btn btn-primary" id="desactivar">
Desactivar</button>
$(document).ready(function() {
$("#activar").click(function(){
$('#nombre').attr('disabled',false);
});
$("#desactivar").click(function(){
$('#nombre').attr('disabled',true);
});
});
-------- o --------
7
4.3. El método prop:
La diferencia entre prop() y attr() es que el método attr() coge el atributo que se ha
determinado en el código Html, mientras que el método prop() coge una propiedad del DOM.
Etiqueta Propiedades
<input> text,password, <textarea> "disabled", "readonly"
<input> radio, checkbox "disabled", "checked"
<select> "disabled", "selected", "multiple"
<button> "disabled"
-------- o --------
5. Eventos:
-------- o --------
8
6. Ejemplo de ventana para una tabla:
<style>
.demo {
position: relative;
height: 130px;
border: 1px solid black;
margin-top: 10px;
padding: 3px;
overflow: auto;
}
</style>
<div class="container">
<div class="row">
<div class="col-xs-6 col-md-6" style="background:#ccc;">
<h3>Formulario:</h3>
</div>
<div class="col-xs-6 col-md-6" style="background:#eee;">
<h3>Lista:</h3>
<div class="demo">
<table class="table">
<thead>
<tr>
<th>Nombre</th>
<th>Apellido</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<tr>
<td>Pablo</td>
<td>Picasso</td>
<td>[email protected]</td>
</tr>
<tr>
<td>Salvador</td>
<td>Dalí</td>
<td>[email protected]</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
9
-------- o --------
10