LENGUAJE JAVASCRIPT: JavaScript un lenguaje de programación web
Programación web al lado del cliente
JavaScript Un lenguaje de script en el cliente
http://www.desarrolloweb.com/manuales/manual-jquery.html
Qué es JQuery
- Es una librería de funciones de javascript que facilita el uso de javascript
- Nosotros nos vamos a centrar en la parte del DOM (elementos y eventos en la página html)
- También se conoce como un framework, que viene siendo un entorno para desarrollar software en un determinado lenguaje, donde se facilita al desarrollador muchas acciones a la hora de hacer un programa.
Para qué sirve JQuery
- Para usar JQuery, hemos de conocer las tecnologías en las cuales lo vamos a utilizar
- HTML
- CSS
- JavaScript
JQuery es un entorno ligero que parte de la filosofía escribe menos, haz mas
- Cosas que se pueden hacer con JQuery:
Manipular la página HTML a través del DOM
Manipular CSS
Acceder y controlar los eventos de la página html
- Efectos y animaciones
- AJAX
- Incorporar Utilidades
- HTML/DOM manipulation
- CSS manipulation
- HTML event methods
- Effects and animations
- AJAX
- Utilities realizadas en JQuery
Cómo usar JQuery
- Para usar jquery debemos especificar el fichero donde están los fuentes de la librería
(: *Al final solo son una librerías de javascript que van a hacer más facil hacer ciertas tareas)
- Podemos indicar dónde está el fuente en internet o descargarlo a nuestro ordenador
- descargarlo https://jquery.com/download/
- Especificar su ubucación en internet
Versión de producción:
<script type="text/javascript" src="jquery-1.10.2.min.js"></script>
Versión de desarrollo
<script type="text/javascript" src="jquery-1.10.2.js"></script>
Uso de un CDN
- También a través de un CDN (Content Delivery Network).
- ¿Qué es un CDN? Grupo de servidores repartidos por todo el mundo en puntos estratégicos y pensados para la distribución de ficheros):
- CDN de Google:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.2.min.js"></script>
- Minified:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
- Full:
<script type="http://code.jquery.com/jquery-1.10.2.js"></script>
</div>
Sintaxis
- La sintaxis de JQuery es muy sencilla
- La filosofía de uso es hacer una acción sobre un conjunto (1 o mas) elementos seleccionados.
- $ indica que vamos a acceder a la bliblioteca jQuery
- selector permitirá identificar el elemento o elementos de la página a la que nos referimos (un determando id, elementos de tipo img, ...
- accion() es la acción que queremos realizar (ocultar, escibir, modificar propiedades , ...)
Especificar cuando se ejecuta
- Hasta ahora la forma de asignar acciones a los eventos es ir elemento a elemento, especificando en el atributo del evento correspondiente la acción deseada
- Tomemos el siguiente ejemplo
saludo al hacer click en un enlace
A partir de una página html que tenga un enlace, hacemos un programa javascript que la hacer click en el enlace salga un saludo con un alert en lugar de ir al enlace
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Hola Mundo con jquery</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<!-- <script src="jquery-1.10.2.min.js"></script> -->
<script>
function saluda(elEventoClick){
alert("Hola Mundo");
elEventoClick.preventDefault();
}
</script>
</head>
<body>
<a href="http://jquery.com/" onclick="saluda(event);">jQuery</a>
</body>
</html>
}}
Comentado el código
<a href="http://jquery.com/" onclick="saluda(event);">jQuery</a>
- Observa cómo se pasa como argumento a la función saluda el propio evento que se genera al hacer un click en el enlace
function saluda(elEventoClick){
alert("Hola Mundo");
elEventoClick.preventDefault();
}
- esta función recibe el evento en una variable llamada elEventoClick, parámetro de la función
- Lo que hago es usar un método de ese objeto para anular la acción básica que es ir al enlace especificado en el atributo href del elemento a
|
- Otra forma de asignar código a un a un elemento es hacerlo todo desde el script. Es decir asignar a un envento a un elemento o grupo de elementos concretos una acción concreta.
// ....
document.getElementById("holamundo").onclick = holaMundo;
// ...
function holaMundo()
{
alert ("Hola Mundo");
return false;
}
- Es importante ver lo peculiar del código anterior.
Asignando el nombre de una función
- En javascipt puedo asignar el nombre de una función a una variable
- En este caso no hace falta asignar paréntensis
- Es como si estuviéramos creando un alias o asignando a una variable el código de una función (Concepto de funciones anónimas)
- Cuando escriba en nombre de la variable, se ejecuta la función
|
Actividad
Title "Asignano funciones a variables"
|
- Pero ahora nos queda el tema de cuando asignar este código.
- Debemos de hacerlo una vez que se haya cargado todo la página.
- Si queremos hacerlo escribiendo el código en la cabecera, podemos usar el evento de que la página se haya cargado
Momento de Ejecución del código Javascript
- Cuando la página se ha cargado.
window.onload = function(){ /*Aquí viene mi código de javascript*/ }
- ¿Por qué? No se puede ejecutar hasta que el DOM se haya cargado completamente
- Desventaja: Habrá que esperar la carga completa de imágenes y anuncios para su ejecución, que requieren más tiempo.
Hola Mundo mediante javascript
- Crea una página web con un enlace que muestre un alert con el texto "Hola Mundo" y que "anule" el enlace.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Hola Mundo en javaScript</title>
<script type="text/javascript">
window.onload = function() {
document.getElementById("holamundo").onclick = holaMundo;
}
function holaMundo()
{
alert ("Hola Mundo");
return false;
}
</script>
</head>
<body>
<a id="holamundo" href="http://jquery.com/">jQuery</a>
</body>
</html>
|
Momento de Ejecución del código jQuery
- Cuando el documento (DOM) esté preparado para ser manipulado.
- Antes de que se carguen imágenes o anuncios.
- ¡Ojo al efectuar acciones sobre imágenes si no están todavía cargadas!
$(document).ready(function(){
// Aquí viene mi código jQuery
});
Hola Mundo mediante jQuery
- Descarga una versión de jQuery e inserta las siguientes instrucciones de jQuery:
$("a").click(function(event) {
alert("Hola Mundo");
event.preventDefault();
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Hola Mundo con jquery</title>
<script src="jquery-1.10.2.min.js"></script>
<script>
$(document).ready(function() {
$("a").click(function(event) {
alert("Hola Mundo");
event.preventDefault();
});
});
</script>
</head>
<body>
<a href="http://jquery.com/">jQuery</a>
</body>
</html>
|
Seleccionar elementos del DOM con JQuery
- Como ya hemos visto la acción de selección empieza por $(), y entre paréntesis se especifica la selección que se desea realizar
- La selección se puede hacer por los siguientes criterios
- nombre
- id
- clases
- tipos
- atributos
- valores de atributos
- otros mas
- Ahora vamos a ver unos ejemplos
$(selector).action()
- $: Simbolo para definir JQuery (podríamos usar también JQuery)
- selector: Consulta sobre los elementos HTML (sintaxis muy similar a CSS)
- action: Acción que se ejecuta sobre los elementos
$(this).hide() //oculta el elemento actual
$("p").hide() //oculta todos los elementos de tipo párrafo
$("p.test").hide() //oculta todos los párrafos con class=test
$("#test").hide() //oculta todos los elementos con id=test
Ejemplos de uso del selector de jQuery
$("p") //se seleccionan todos los elementos de tipo párrafo
$("p.intro") //todos los párrafos con class=intro
$("p#demo") //todos los párrafos con id=demo
$("[href]") //todos los elementos con atributo href
$("[href='#']") //todos los elementos con atributo href="#"
$("[href!='#']") //todos los elementos con atributo href diferente de "#"
$("[href$='.jpg']") //todos los elmentos con atributo href que acabe en .jpg
$("p").css("background-color","yellow"); //modificamos el background-color de todos los párrafos a amarillo
$("p#intro:first") //El primer párrafo con id="intro"
$("ul li:first") El primer elemento <li> de cada <ul>
$("div#intro .head") //Todos los elementos con class="head" dentro de un <div> con id="intro"
Dado el siguiente código oculta todos los elementos
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("selector").hide();
});
</script>
</head>
<body>
<h2>This is a heading</h2>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
</body>
</html>
|
Oculta el elemento con id=test.
|
Aplicando efectos con JQuery
Encadenando métodos en JQuery
Dom y JQuery; Modificando elemntos
Dom y JQuery; Accediendo a los atributos
JQuery y CSS
JQuery y Formularios
JQuery y Eventos
JQuery Validando formularios con plugin
==== JQueryUI: Interfaz gráfico con JQuery====