SlideShare una empresa de Scribd logo
1 de 67
Descargar para leer sin conexión
jQuery
Desarrollo de aplicaciones web
jQuery
● Es un framework Javascript
● El proposito es facilitar la inclusion de
Javascript en un sitio o aplicacion web
● Podemos verlo como una capa de abstraccion
● Transforma muchas lineas de codigo Javascript, en
funciones mas simples
● NO reemplaza a Javascript, sino que simplifica
su sintaxis
jQuery
● Existen multiples alternativas a jQuery
● Sin embargo, hoy dia es una de las mas
populares en el mercado
● Asimismo es una de las mas extensibles,
pudiendose encontrar plugins para casi
cualquier tarea en la web
Utilizando jQuery
● Para utilizarlo, debemos incluirlo en las paginas
en las que vamos a utilizarso
● Podemos descargar el framework desde
www.jquery.com
● Agregamos una referencia al archivo
descargado, en el head de la pagina
● <script type="text/javascript"
src="jquery-1.5.1.js"></script>
Utilizando jQuery
● Debemos agregar en el head esta referencia:
<head>
<title>jQuery test</title>
<script type="text/javascript"
src="jquery-1.5.1.js"></script>
</head>
Hello world!
● Este es un ejemplo de uso de jQuery:
<div id="divTest1"></div>
<script type="text/javascript">
$("#divTest1").text("Hello, world!");
</script>
● Esto carga en el divTest1, el string “Hello, world!”
Hello world!
● El equivalente sin jQuery, es un poco mas largo
<div id="divTest2"></div>
<script type="text/javascript">
document.getElementById("divTest2").innerHTML =
"Hello, world!";
</script>
● Ademas, es dependiente del browser
Ready event
● El ejemplo anterior manipula el contenido de la
pagina
● Es buena practica esperar a que el documento
este cargado y pronto para ser utilizado
● Esto permite
● Que las estructuras de la pagina esten cargadas
antes de comenzar a utilizarlas
● Que el codigo Javascript pueda ser colocado al
comienzo de la pagina
Ready event
Ready event (funcion anonima)
Encadenamiento
● Una caracteristica interesante de jQuery, es
que la mayoria de los metodos, retornan un
objeto jQuery
● Esto permite realizar cadenas de invocaciones,
como por ejemplo:
Encadenamiento
● Podemos hacer que el codigo se vea mas
intuitivo, como por ejemplo:
Selectores
● Una de las tareas mas comunes al usar
Javascript, es modificar el contenido de la
pagina
● Pero para hacer esto, necesitamos encontrar lo
que queremos cambiar
● Es para esto que se utilizan los selectores
● Para elegir un conjunto de elementos, hacemos
$(<query para seleccionar>)
#id
● Utiliza el identificador de un elemento en la
pagina, el cual debe ser unico
.class
● Permite seleccionar los elementos de una
determinada clase de estilo
element selector
● Tambien es posible seleccionar todos los
elementos de la pagina de un determinado tipo
● $("a")
● $("div")
● Tambien podemos combinar los ultimos dos
selectores
● $("span.bold").css("font-weight", "bold");
Selectores basados en atributos
● Ademas de los selectores anteriores, podemos
realizar selecciones de elementos basado en
los atributos de estos elementos
Filtramos por el valor de atributo
● Podemos utilizar operadores para filtrar los
valores de los atributos
Selectores padre/hijo
● jQuery permite realizar selecciones de
elementos, basados en el elemento padre
● Tenemos dos tipos
● Las selecciones basadas en el padre directo de un
elemento
● Las selecciones que permiten filtrar por cualquier
elementro ancestro del elemento buscado
Selectores padre/hijo
● Para seleccionar los elementos cuyo padre
directo es de un determinado tipo:
$("div > a")
● Para seleccionar los elementos que tenga
algun padre de un determinado tipo:
$("div a")
DOM (document object model)
● Uno de los principales aspectos de jQuery, es
que permite manipular el DOM del documento
html
● Es una forma de interactuar con el HTML/XML
o XHTML de la pagina
● jQuery viene con una serie de metodos que
permiten una manipulcion sencilla de los
componentes del documento
Manipulando el contenido
● La forma mas simple de manipulacion, es
obtener y guardar texto, valores y html
● Son similares, pero no lo mismo
● text: es una representacion textual del inner content
del elemento
● values: es para elementos del formulario
● html: es una representacion textual, pero
incluyendo markup html
Manipulando el contenido
Manipulando el contenido
Manipulando atributos
● En forma similar al contenido, podemos
manipular atributos, a traves del metodo attr()
● Por ejemplo:
Manipulando atributos
● Para modificar el valor del atributo, agregamos
un parametro extra
Manipulando atributos
● Tambien podemos manipular muchos atributos
juntos, utilizando un map
Manipulando clases CSS
● A traves de metodos como los anteriores,
podemos manipular tambien las clases de
estilo que un elemento tiene asignadas
● Supongamos que tenemos:
Manipulando clases CSS
● Tenemos los metodos
● hasClass() que retorna si un elemento tiene una
clase
● addClass() para agregar una clase a un elemento
● removeClass() para quitar una clase de un
elemento
Manipulando clases CSS
Manipulando clases CSS
● El codigo anterior, controla si un elemento tiene
una clase, si la tiene la elimina, si no la tiene, se
la establece
● Como esto es una tarea muy comun, tenemos
el metodo toggleClass()
<a href="javascript:void(0);"
onclick="$(this).toggleClass('bold');">
Toggle class
</a>
Manipulando clases CSS
● El mecanismo de selectores, permite que la
manipulacion de clases aplique sobre un
conjunto de elementos:
Manipulando clases CSS
● Lo anterior genera una imagen como la
siguiente:
Manipulando el DOM
● Los metodos append() y prepend(), permiten
agregar elementos dentro de otros elementos,
al final y al principio, respectivamente:
Manipulando el DOM
● Ambos metodos reciben una cantidad infinita
de parametros:
Manipulando el DOM
● Tambien disponemos de los metodos before() y
after(), que son muy similares a los anteriores.
● La diferencia es que permiten hacer
inserciones en varios elementos a la vez
Manipulando el DOM
● Tambien tenemos los metodos remove() y
empty()
● Empty permite eliminar todos los hijos de un
determinado elemento
$('#divTestArea1').empty()
● Remove permite eliminar los elementos
seleccionados
$('#divTestArea1').remove()
Eventos
● jQuery provee un mecanismo interesante para
asociar codigo en funciones, a elementos en la
pagina
● Por ejemplo:
binding
● jQuery provee los metodos bind() y unbind()
para atachear y desatachear funciones a
conjuntos de elementos
binding
● Cuando jQuery invoque el evento, pasara
informacion relativa al mismo como primer
argumento
● Por ejemplo, informacion sobre la posicion del
mouse, puede encontrarse en este objeto, o
que tecla del teclado se ha presionado
● La informacion de referencia puede obtenerse
aqui:
http://api.jquery.com/event.which/
binding
● Por ejemplo, con el caso de un evento de
mouse, podemos obtener:
binding
● Tambien podemos pasar informacion propia, y
obtenerla dentro de la funcion, en el objeto que
representa el evento:
binding
● Con el metodo unbind(), podemos remover las
subscripciones a funciones que tienen los
elementos
● Por ejemplo:
$("a").unbind();
$("a").unbind("click doubleclick");
Que es AJAX?
● Javascript para la interacción con el browser y
para responder ante eventos
● DOM para acceder y modificar la estructura del
documento HTML
● XML para representar los datos que viajan
entre el servidor y el cliente
● El objeto XMLHttpRequest para intercambiar
datos XML asincronicamente con el servidor
Funcionamiento
Funcionamiento
load()
● Una de las formas mas simples de cargar datos
asincronicamente en jQuery, es a traves del
metodo load()
● Por ejemplo, supongamos que tenemos una
pagina content.html
load()
● Indicando cual es el elemento en el que
queremos cargar los datos, podemos utilizar el
metodo load():
load()
● Tambien podemos seleccionar parte de la
pagina a cargar, usando un selector como parte
de load():
get() / post()
● Estos metodos permiten enviar y recibir
paquetes HTTP contra el servidor
● Ambos son metodos estaticos, por lo que
pueden ser usados en el objeto jQuery o
directamente sin instancia:
● jQuery.get() / jQuery.post()
● $.get() / $.post()
get() / post()
● Estos metodos reciben una URL como
parametro, indicando donde queremos acceder
● Si queremos hacer algo con el resultado,
debemos utilizar una funcion de callback
parametros
● En caso de que lo necesitemos, podemos
enviar parametros al servidor, a traves de un
mapa
JSON
● JavaScript Object Notation
● Es un subconjunto de JavaScript
● Puede ser parseado por un parser JavaScript
● Puede representar objetos primitivos o complejos
● Pueden ser String, Objects, Booleans, Integers y
Arrays
● Un objeto:
JSON
● Es legible tanto por un humano como por una
maquina
● Tiene soporte de unicode
● Es autodocumentable
● Es mas liviano que XML
● ver: http://json.org/example.html
● Los algoritmos de parsing son eficientes, debido
a la estructura estricta pero simple
● Puede representar registros, listas y arboles
JSON
● Puede ser usado directamente en Javascript, para
ser convertido a una estructura Javascript
● Por ejemplo, podemos tener:
● var data = eval('<JSON STRING>')
● Luego, la variable data tendra la lista, la estructura
o el valor primitivo que represente el string JSON
● Podemos usarlo para acceder a campos por
ejemplo
● alert(data.name);
jQuery + JSON + Java (Web)
● Los tres elementos pueden ser combinados para
construir aplicaciones web empresariales
● jQuery, junto a su bibilioteca de widgets, puede
utilizarse para construir las vistas de nuestra
aplicacion
● Los componentes Java (Servlets, Web services,
EJBs) pueden utilizarse para implementar el
backend server side de la aplicacion
● JSON puede ser usado como formato de
intercambio de datos
JSON + Servlets
● Una forma simple de exponer informacion
desde el servidor, es utilizar Servlets (o
servicios REST) para enviar y recibir
informacion
● Necesitamos una forma simple de transformar
objetos desde y hacia el formato JSON
● Una libreria interesante, es google-gson, la cual
provee mecanismos para convertir
automaticamente desde y hacia JSON, objetos
Java
google-gson
● Se encarga de la serializacion/deserializacion
JSON-JAVA
● Gson gson = new Gson();
● gson.toJson(1); ==> imprime 1
● gson.toJson("abcd"); ==> imprime "abcd"
● gson.toJson(new Long(10)); ==> imprime 10
● int[] values = { 1 };
● gson.toJson(values); ==> imprime [1]
google-gson
● int one = gson.fromJson("1", int.class);
● Integer one = gson.fromJson("1", Integer.class);
● Long one = gson.fromJson("1", Long.class);
● Boolean false = gson.fromJson("false",
Boolean.class);
● String str = gson.fromJson(""abc"",
String.class);
● String anotherStr = gson.fromJson("["abc"]",
String.class);
jQuery UI
● Es un framework construido sobre jQuery, que
provee efectos de animacion, widgets
(controles), efectos y temas
● Puede ser usado para construir interfaces
graficas con un alto nivel de interactividad y
belleza grafica
● Entrar a:
● http://jqueryui.com/
● http://jqueryui.com/demos/
jQuery UI – Ejemplo sencillo
● Para agregar soporte en una pagina,
agregamos al head:
● <link type="text/css" href="css/themename/jquery-
ui-1.8.14.custom.css" rel="Stylesheet" />
● <script type="text/javascript" src="js/jquery-
1.4.4.min.js"></script>
● <script type="text/javascript" src="js/jquery-ui-
1.8.14.custom.min.js"></script>
jQuery UI – Ejemplo sencillo
● Supongamos que queremos agregar un date
picker a la pagina
● Agregamos lo siguiente:
<input type="text" name="date" id="date" />
● Y luego, en la funcion onReady()
$('#date').datepicker();
● Y obtenemos:
jQuery UI – Ejemplo sencillo

Más contenido relacionado

La actualidad más candente

jQuery 1.3 Eghost Julio2009
jQuery 1.3 Eghost Julio2009jQuery 1.3 Eghost Julio2009
jQuery 1.3 Eghost Julio2009Irontec
 
Javascript Básico
Javascript BásicoJavascript Básico
Javascript Básicocamposer
 
Comunicacion entre formularios HTML y paginas JSP
Comunicacion entre formularios HTML y paginas JSPComunicacion entre formularios HTML y paginas JSP
Comunicacion entre formularios HTML y paginas JSPDanii Rodriguez
 
Introducción a prototype javascript
Introducción a prototype javascriptIntroducción a prototype javascript
Introducción a prototype javascriptaitorgr
 
Todo lo que un desarrollador no puede desconocer de javascript tutorial j q...
Todo lo que un desarrollador no puede desconocer de javascript   tutorial j q...Todo lo que un desarrollador no puede desconocer de javascript   tutorial j q...
Todo lo que un desarrollador no puede desconocer de javascript tutorial j q...Marcelino Ortiz
 
Jyoc java-cap07 clases y objetos
Jyoc java-cap07 clases y objetosJyoc java-cap07 clases y objetos
Jyoc java-cap07 clases y objetosJyoc X
 

La actualidad más candente (10)

DOM HTML Javascript
DOM HTML JavascriptDOM HTML Javascript
DOM HTML Javascript
 
jQuery 1.3 Eghost Julio2009
jQuery 1.3 Eghost Julio2009jQuery 1.3 Eghost Julio2009
jQuery 1.3 Eghost Julio2009
 
Javascript Básico
Javascript BásicoJavascript Básico
Javascript Básico
 
Comunicacion entre formularios HTML y paginas JSP
Comunicacion entre formularios HTML y paginas JSPComunicacion entre formularios HTML y paginas JSP
Comunicacion entre formularios HTML y paginas JSP
 
Document Object Model
Document Object ModelDocument Object Model
Document Object Model
 
Introducción a prototype javascript
Introducción a prototype javascriptIntroducción a prototype javascript
Introducción a prototype javascript
 
Todo lo que un desarrollador no puede desconocer de javascript tutorial j q...
Todo lo que un desarrollador no puede desconocer de javascript   tutorial j q...Todo lo que un desarrollador no puede desconocer de javascript   tutorial j q...
Todo lo que un desarrollador no puede desconocer de javascript tutorial j q...
 
Jyoc java-cap07 clases y objetos
Jyoc java-cap07 clases y objetosJyoc java-cap07 clases y objetos
Jyoc java-cap07 clases y objetos
 
jQuery y ASP
jQuery y ASPjQuery y ASP
jQuery y ASP
 
Exposicion
ExposicionExposicion
Exposicion
 

Similar a JQuery con ejemplos cortos

Similar a JQuery con ejemplos cortos (20)

Mootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSMootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JS
 
Programación_del_lado_del_servidor......
Programación_del_lado_del_servidor......Programación_del_lado_del_servidor......
Programación_del_lado_del_servidor......
 
Clase 12 jQuery basico
Clase 12  jQuery basicoClase 12  jQuery basico
Clase 12 jQuery basico
 
Seminario jquery, html5 y wicket
Seminario jquery, html5 y wicketSeminario jquery, html5 y wicket
Seminario jquery, html5 y wicket
 
Jquery 2
Jquery 2Jquery 2
Jquery 2
 
El Mal Odiado Javascript
El Mal Odiado JavascriptEl Mal Odiado Javascript
El Mal Odiado Javascript
 
Objetos Implicitos de JSP
Objetos Implicitos de JSPObjetos Implicitos de JSP
Objetos Implicitos de JSP
 
Jquery parte 1
Jquery parte 1Jquery parte 1
Jquery parte 1
 
JavaScript
JavaScriptJavaScript
JavaScript
 
Mallorca MUG: MongoDB y .NET
Mallorca MUG: MongoDB y .NETMallorca MUG: MongoDB y .NET
Mallorca MUG: MongoDB y .NET
 
Js
JsJs
Js
 
javascript.ppt
javascript.pptjavascript.ppt
javascript.ppt
 
El Mal Odiado Javascript
El Mal Odiado JavascriptEl Mal Odiado Javascript
El Mal Odiado Javascript
 
8.clases y objetos en c++
8.clases y objetos en c++8.clases y objetos en c++
8.clases y objetos en c++
 
Scraping avanzado o Cómo hacer de internet tu base de datos #seoplus2018
Scraping avanzado o Cómo hacer de internet tu base de datos #seoplus2018Scraping avanzado o Cómo hacer de internet tu base de datos #seoplus2018
Scraping avanzado o Cómo hacer de internet tu base de datos #seoplus2018
 
Primer presentacion
Primer presentacion Primer presentacion
Primer presentacion
 
03. Introduccion a JavaScript y JQuery
03. Introduccion a JavaScript y JQuery03. Introduccion a JavaScript y JQuery
03. Introduccion a JavaScript y JQuery
 
Todo Javascript para canibales
Todo Javascript para canibalesTodo Javascript para canibales
Todo Javascript para canibales
 
Javascript de Canibales
Javascript de CanibalesJavascript de Canibales
Javascript de Canibales
 
Java Script de canibaless
Java Script de canibalessJava Script de canibaless
Java Script de canibaless
 

Más de José Ricardo Tillero Giménez

Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRP
Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRPGuía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRP
Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRPJosé Ricardo Tillero Giménez
 

Más de José Ricardo Tillero Giménez (20)

PLAN DE EVALUACIÓN REDES AVANZADAS II-2021
PLAN DE EVALUACIÓN REDES AVANZADAS II-2021PLAN DE EVALUACIÓN REDES AVANZADAS II-2021
PLAN DE EVALUACIÓN REDES AVANZADAS II-2021
 
Guía Ejercicios SQL
Guía Ejercicios SQLGuía Ejercicios SQL
Guía Ejercicios SQL
 
Guía 3 Ejercicios de Normalización de Base de Datos
Guía 3 Ejercicios de Normalización de Base de DatosGuía 3 Ejercicios de Normalización de Base de Datos
Guía 3 Ejercicios de Normalización de Base de Datos
 
Guía 1 Ejercicios MR
Guía 1 Ejercicios MRGuía 1 Ejercicios MR
Guía 1 Ejercicios MR
 
Guía 2 Ejercicios de Normalización de Base de Datos
Guía 2 Ejercicios de Normalización de Base de DatosGuía 2 Ejercicios de Normalización de Base de Datos
Guía 2 Ejercicios de Normalización de Base de Datos
 
Guía 3 Ejercicios MER Extendido
Guía 3 Ejercicios MER ExtendidoGuía 3 Ejercicios MER Extendido
Guía 3 Ejercicios MER Extendido
 
Guía 2 Ejercicios MER
Guía 2 Ejercicios MERGuía 2 Ejercicios MER
Guía 2 Ejercicios MER
 
Guía 1 Ejercicios MER
Guía 1 Ejercicios MERGuía 1 Ejercicios MER
Guía 1 Ejercicios MER
 
Plan de evaluación BD2021
Plan de evaluación BD2021Plan de evaluación BD2021
Plan de evaluación BD2021
 
Perfil Docente y Asesoría
Perfil Docente y AsesoríaPerfil Docente y Asesoría
Perfil Docente y Asesoría
 
Planificación BD2021
Planificación BD2021Planificación BD2021
Planificación BD2021
 
UNIDAD 1. El mundo de las Bases de Datos y los SMBD
UNIDAD 1. El mundo de las Bases de Datos y los SMBDUNIDAD 1. El mundo de las Bases de Datos y los SMBD
UNIDAD 1. El mundo de las Bases de Datos y los SMBD
 
NOTAS FINALES DE REDES AVANZADAS IIN4301
NOTAS FINALES DE REDES AVANZADAS IIN4301NOTAS FINALES DE REDES AVANZADAS IIN4301
NOTAS FINALES DE REDES AVANZADAS IIN4301
 
NOTAS FINALES ELECTIVA II IN2102
NOTAS FINALES ELECTIVA II IN2102NOTAS FINALES ELECTIVA II IN2102
NOTAS FINALES ELECTIVA II IN2102
 
NOTAS FINALES ELECTIVA II IN2101
NOTAS FINALES ELECTIVA II IN2101NOTAS FINALES ELECTIVA II IN2101
NOTAS FINALES ELECTIVA II IN2101
 
Notas definitivas per base de datos
Notas definitivas per base de datosNotas definitivas per base de datos
Notas definitivas per base de datos
 
Clase 6 VLAN
Clase 6 VLANClase 6 VLAN
Clase 6 VLAN
 
Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRP
Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRPGuía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRP
Guía de Redistribución de protocolos de ruteo RIP, PSPF y EIGRP
 
Guía CISCO de redistribución de protocolos de ruteo
Guía CISCO de redistribución de protocolos de ruteoGuía CISCO de redistribución de protocolos de ruteo
Guía CISCO de redistribución de protocolos de ruteo
 
Manual Basico de jQuery
Manual Basico de jQueryManual Basico de jQuery
Manual Basico de jQuery
 

Último

PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptxPRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptxmanuelrojash
 
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdfQUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdflupismdo
 
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfEL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfssuser2887fd1
 
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOSTEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOSreyjuancarlosjose
 
VALOR DEL DINERO EN EL TIEMPO - 2024 - SEMINARIO DE FINANZAS
VALOR DEL DINERO EN EL TIEMPO - 2024 - SEMINARIO DE FINANZASVALOR DEL DINERO EN EL TIEMPO - 2024 - SEMINARIO DE FINANZAS
VALOR DEL DINERO EN EL TIEMPO - 2024 - SEMINARIO DE FINANZASJhonPomasongo1
 
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICOlupismdo
 
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdfmercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdfGegdielJose1
 
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdfMANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdflupismdo
 
Proyecto de catálogo de cuentas EMPRESA.
Proyecto de catálogo de cuentas EMPRESA.Proyecto de catálogo de cuentas EMPRESA.
Proyecto de catálogo de cuentas EMPRESA.ssuser10db01
 
Dino Jarach - El Hecho Imponible2024.pdf
Dino Jarach - El Hecho Imponible2024.pdfDino Jarach - El Hecho Imponible2024.pdf
Dino Jarach - El Hecho Imponible2024.pdfAdrianKreitzer
 
El cheque 1 y sus tipos de cheque.pptx
El cheque  1 y sus tipos de  cheque.pptxEl cheque  1 y sus tipos de  cheque.pptx
El cheque 1 y sus tipos de cheque.pptxNathaliTAndradeS
 
Principios de economia Mankiw 6 edicion.pdf
Principios de economia Mankiw 6 edicion.pdfPrincipios de economia Mankiw 6 edicion.pdf
Principios de economia Mankiw 6 edicion.pdfauxcompras5
 
Administración del capital de trabajo - UNR.pdf
Administración del capital de trabajo - UNR.pdfAdministración del capital de trabajo - UNR.pdf
Administración del capital de trabajo - UNR.pdfMarcelo732474
 
Análisis de la Temporada Turística 2024 en Uruguay
Análisis de la Temporada Turística 2024 en UruguayAnálisis de la Temporada Turística 2024 en Uruguay
Análisis de la Temporada Turística 2024 en UruguayEXANTE
 
puntos-clave-de-la-reforma-pensional-2023.pdf
puntos-clave-de-la-reforma-pensional-2023.pdfpuntos-clave-de-la-reforma-pensional-2023.pdf
puntos-clave-de-la-reforma-pensional-2023.pdfosoriojuanpablo114
 
Sección 13 Inventarios, NIIF PARA PYMES
Sección  13 Inventarios, NIIF PARA PYMESSección  13 Inventarios, NIIF PARA PYMES
Sección 13 Inventarios, NIIF PARA PYMESssuser10db01
 
ley del ISO Y acreditamientos y extensiones
ley del ISO Y acreditamientos y extensionesley del ISO Y acreditamientos y extensiones
ley del ISO Y acreditamientos y extensionesYimiLopesBarrios
 
Politicas publicas para el sector agropecuario en México.pptx
Politicas publicas para el sector agropecuario en México.pptxPoliticas publicas para el sector agropecuario en México.pptx
Politicas publicas para el sector agropecuario en México.pptxvladisse
 
Estructura y elaboración de un presupuesto financiero
Estructura y elaboración de un presupuesto financieroEstructura y elaboración de un presupuesto financiero
Estructura y elaboración de un presupuesto financieroMARTINMARTINEZ30236
 

Último (20)

PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptxPRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
PRESUPUESTOS COMO HERRAMIENTA DE GESTION - UNIAGUSTINIANA.pptx
 
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdfQUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
QUE REQUISITOS DEBO CUMPLIR PARA PENSIONARME.pdf
 
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfEL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
 
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOSTEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
TEMA 3 DECISIONES DE INVERSION Y FINANCIACION UNIVERISDAD REY JUAN CARLOS
 
VALOR DEL DINERO EN EL TIEMPO - 2024 - SEMINARIO DE FINANZAS
VALOR DEL DINERO EN EL TIEMPO - 2024 - SEMINARIO DE FINANZASVALOR DEL DINERO EN EL TIEMPO - 2024 - SEMINARIO DE FINANZAS
VALOR DEL DINERO EN EL TIEMPO - 2024 - SEMINARIO DE FINANZAS
 
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
41 RAZONES DE PORQUE SI ESTAMOS MAL EN MÉXICO
 
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdfmercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
mercado de capitales universidad simon rodriguez - guanare (unidad I).pdf
 
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdfMANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
 
Proyecto de catálogo de cuentas EMPRESA.
Proyecto de catálogo de cuentas EMPRESA.Proyecto de catálogo de cuentas EMPRESA.
Proyecto de catálogo de cuentas EMPRESA.
 
Dino Jarach - El Hecho Imponible2024.pdf
Dino Jarach - El Hecho Imponible2024.pdfDino Jarach - El Hecho Imponible2024.pdf
Dino Jarach - El Hecho Imponible2024.pdf
 
El cheque 1 y sus tipos de cheque.pptx
El cheque  1 y sus tipos de  cheque.pptxEl cheque  1 y sus tipos de  cheque.pptx
El cheque 1 y sus tipos de cheque.pptx
 
Principios de economia Mankiw 6 edicion.pdf
Principios de economia Mankiw 6 edicion.pdfPrincipios de economia Mankiw 6 edicion.pdf
Principios de economia Mankiw 6 edicion.pdf
 
Administración del capital de trabajo - UNR.pdf
Administración del capital de trabajo - UNR.pdfAdministración del capital de trabajo - UNR.pdf
Administración del capital de trabajo - UNR.pdf
 
Análisis de la Temporada Turística 2024 en Uruguay
Análisis de la Temporada Turística 2024 en UruguayAnálisis de la Temporada Turística 2024 en Uruguay
Análisis de la Temporada Turística 2024 en Uruguay
 
Mercado Eléctrico de Ecuador y España.pdf
Mercado Eléctrico de Ecuador y España.pdfMercado Eléctrico de Ecuador y España.pdf
Mercado Eléctrico de Ecuador y España.pdf
 
puntos-clave-de-la-reforma-pensional-2023.pdf
puntos-clave-de-la-reforma-pensional-2023.pdfpuntos-clave-de-la-reforma-pensional-2023.pdf
puntos-clave-de-la-reforma-pensional-2023.pdf
 
Sección 13 Inventarios, NIIF PARA PYMES
Sección  13 Inventarios, NIIF PARA PYMESSección  13 Inventarios, NIIF PARA PYMES
Sección 13 Inventarios, NIIF PARA PYMES
 
ley del ISO Y acreditamientos y extensiones
ley del ISO Y acreditamientos y extensionesley del ISO Y acreditamientos y extensiones
ley del ISO Y acreditamientos y extensiones
 
Politicas publicas para el sector agropecuario en México.pptx
Politicas publicas para el sector agropecuario en México.pptxPoliticas publicas para el sector agropecuario en México.pptx
Politicas publicas para el sector agropecuario en México.pptx
 
Estructura y elaboración de un presupuesto financiero
Estructura y elaboración de un presupuesto financieroEstructura y elaboración de un presupuesto financiero
Estructura y elaboración de un presupuesto financiero
 

JQuery con ejemplos cortos

  • 2. jQuery ● Es un framework Javascript ● El proposito es facilitar la inclusion de Javascript en un sitio o aplicacion web ● Podemos verlo como una capa de abstraccion ● Transforma muchas lineas de codigo Javascript, en funciones mas simples ● NO reemplaza a Javascript, sino que simplifica su sintaxis
  • 3. jQuery ● Existen multiples alternativas a jQuery ● Sin embargo, hoy dia es una de las mas populares en el mercado ● Asimismo es una de las mas extensibles, pudiendose encontrar plugins para casi cualquier tarea en la web
  • 4. Utilizando jQuery ● Para utilizarlo, debemos incluirlo en las paginas en las que vamos a utilizarso ● Podemos descargar el framework desde www.jquery.com ● Agregamos una referencia al archivo descargado, en el head de la pagina ● <script type="text/javascript" src="jquery-1.5.1.js"></script>
  • 5. Utilizando jQuery ● Debemos agregar en el head esta referencia: <head> <title>jQuery test</title> <script type="text/javascript" src="jquery-1.5.1.js"></script> </head>
  • 6. Hello world! ● Este es un ejemplo de uso de jQuery: <div id="divTest1"></div> <script type="text/javascript"> $("#divTest1").text("Hello, world!"); </script> ● Esto carga en el divTest1, el string “Hello, world!”
  • 7. Hello world! ● El equivalente sin jQuery, es un poco mas largo <div id="divTest2"></div> <script type="text/javascript"> document.getElementById("divTest2").innerHTML = "Hello, world!"; </script> ● Ademas, es dependiente del browser
  • 8. Ready event ● El ejemplo anterior manipula el contenido de la pagina ● Es buena practica esperar a que el documento este cargado y pronto para ser utilizado ● Esto permite ● Que las estructuras de la pagina esten cargadas antes de comenzar a utilizarlas ● Que el codigo Javascript pueda ser colocado al comienzo de la pagina
  • 11. Encadenamiento ● Una caracteristica interesante de jQuery, es que la mayoria de los metodos, retornan un objeto jQuery ● Esto permite realizar cadenas de invocaciones, como por ejemplo:
  • 12. Encadenamiento ● Podemos hacer que el codigo se vea mas intuitivo, como por ejemplo:
  • 13. Selectores ● Una de las tareas mas comunes al usar Javascript, es modificar el contenido de la pagina ● Pero para hacer esto, necesitamos encontrar lo que queremos cambiar ● Es para esto que se utilizan los selectores ● Para elegir un conjunto de elementos, hacemos $(<query para seleccionar>)
  • 14. #id ● Utiliza el identificador de un elemento en la pagina, el cual debe ser unico
  • 15. .class ● Permite seleccionar los elementos de una determinada clase de estilo
  • 16. element selector ● Tambien es posible seleccionar todos los elementos de la pagina de un determinado tipo ● $("a") ● $("div") ● Tambien podemos combinar los ultimos dos selectores ● $("span.bold").css("font-weight", "bold");
  • 17. Selectores basados en atributos ● Ademas de los selectores anteriores, podemos realizar selecciones de elementos basado en los atributos de estos elementos
  • 18. Filtramos por el valor de atributo ● Podemos utilizar operadores para filtrar los valores de los atributos
  • 19. Selectores padre/hijo ● jQuery permite realizar selecciones de elementos, basados en el elemento padre ● Tenemos dos tipos ● Las selecciones basadas en el padre directo de un elemento ● Las selecciones que permiten filtrar por cualquier elementro ancestro del elemento buscado
  • 20. Selectores padre/hijo ● Para seleccionar los elementos cuyo padre directo es de un determinado tipo: $("div > a") ● Para seleccionar los elementos que tenga algun padre de un determinado tipo: $("div a")
  • 21.
  • 22.
  • 23. DOM (document object model) ● Uno de los principales aspectos de jQuery, es que permite manipular el DOM del documento html ● Es una forma de interactuar con el HTML/XML o XHTML de la pagina ● jQuery viene con una serie de metodos que permiten una manipulcion sencilla de los componentes del documento
  • 24. Manipulando el contenido ● La forma mas simple de manipulacion, es obtener y guardar texto, valores y html ● Son similares, pero no lo mismo ● text: es una representacion textual del inner content del elemento ● values: es para elementos del formulario ● html: es una representacion textual, pero incluyendo markup html
  • 27. Manipulando atributos ● En forma similar al contenido, podemos manipular atributos, a traves del metodo attr() ● Por ejemplo:
  • 28. Manipulando atributos ● Para modificar el valor del atributo, agregamos un parametro extra
  • 29. Manipulando atributos ● Tambien podemos manipular muchos atributos juntos, utilizando un map
  • 30. Manipulando clases CSS ● A traves de metodos como los anteriores, podemos manipular tambien las clases de estilo que un elemento tiene asignadas ● Supongamos que tenemos:
  • 31. Manipulando clases CSS ● Tenemos los metodos ● hasClass() que retorna si un elemento tiene una clase ● addClass() para agregar una clase a un elemento ● removeClass() para quitar una clase de un elemento
  • 33. Manipulando clases CSS ● El codigo anterior, controla si un elemento tiene una clase, si la tiene la elimina, si no la tiene, se la establece ● Como esto es una tarea muy comun, tenemos el metodo toggleClass() <a href="javascript:void(0);" onclick="$(this).toggleClass('bold');"> Toggle class </a>
  • 34. Manipulando clases CSS ● El mecanismo de selectores, permite que la manipulacion de clases aplique sobre un conjunto de elementos:
  • 35. Manipulando clases CSS ● Lo anterior genera una imagen como la siguiente:
  • 36. Manipulando el DOM ● Los metodos append() y prepend(), permiten agregar elementos dentro de otros elementos, al final y al principio, respectivamente:
  • 37. Manipulando el DOM ● Ambos metodos reciben una cantidad infinita de parametros:
  • 38. Manipulando el DOM ● Tambien disponemos de los metodos before() y after(), que son muy similares a los anteriores. ● La diferencia es que permiten hacer inserciones en varios elementos a la vez
  • 39. Manipulando el DOM ● Tambien tenemos los metodos remove() y empty() ● Empty permite eliminar todos los hijos de un determinado elemento $('#divTestArea1').empty() ● Remove permite eliminar los elementos seleccionados $('#divTestArea1').remove()
  • 40. Eventos ● jQuery provee un mecanismo interesante para asociar codigo en funciones, a elementos en la pagina ● Por ejemplo:
  • 41. binding ● jQuery provee los metodos bind() y unbind() para atachear y desatachear funciones a conjuntos de elementos
  • 42. binding ● Cuando jQuery invoque el evento, pasara informacion relativa al mismo como primer argumento ● Por ejemplo, informacion sobre la posicion del mouse, puede encontrarse en este objeto, o que tecla del teclado se ha presionado ● La informacion de referencia puede obtenerse aqui: http://api.jquery.com/event.which/
  • 43. binding ● Por ejemplo, con el caso de un evento de mouse, podemos obtener:
  • 44. binding ● Tambien podemos pasar informacion propia, y obtenerla dentro de la funcion, en el objeto que representa el evento:
  • 45. binding ● Con el metodo unbind(), podemos remover las subscripciones a funciones que tienen los elementos ● Por ejemplo: $("a").unbind(); $("a").unbind("click doubleclick");
  • 46. Que es AJAX? ● Javascript para la interacción con el browser y para responder ante eventos ● DOM para acceder y modificar la estructura del documento HTML ● XML para representar los datos que viajan entre el servidor y el cliente ● El objeto XMLHttpRequest para intercambiar datos XML asincronicamente con el servidor
  • 47.
  • 48.
  • 51. load() ● Una de las formas mas simples de cargar datos asincronicamente en jQuery, es a traves del metodo load() ● Por ejemplo, supongamos que tenemos una pagina content.html
  • 52. load() ● Indicando cual es el elemento en el que queremos cargar los datos, podemos utilizar el metodo load():
  • 53. load() ● Tambien podemos seleccionar parte de la pagina a cargar, usando un selector como parte de load():
  • 54. get() / post() ● Estos metodos permiten enviar y recibir paquetes HTTP contra el servidor ● Ambos son metodos estaticos, por lo que pueden ser usados en el objeto jQuery o directamente sin instancia: ● jQuery.get() / jQuery.post() ● $.get() / $.post()
  • 55. get() / post() ● Estos metodos reciben una URL como parametro, indicando donde queremos acceder ● Si queremos hacer algo con el resultado, debemos utilizar una funcion de callback
  • 56. parametros ● En caso de que lo necesitemos, podemos enviar parametros al servidor, a traves de un mapa
  • 57. JSON ● JavaScript Object Notation ● Es un subconjunto de JavaScript ● Puede ser parseado por un parser JavaScript ● Puede representar objetos primitivos o complejos ● Pueden ser String, Objects, Booleans, Integers y Arrays ● Un objeto:
  • 58. JSON ● Es legible tanto por un humano como por una maquina ● Tiene soporte de unicode ● Es autodocumentable ● Es mas liviano que XML ● ver: http://json.org/example.html ● Los algoritmos de parsing son eficientes, debido a la estructura estricta pero simple ● Puede representar registros, listas y arboles
  • 59. JSON ● Puede ser usado directamente en Javascript, para ser convertido a una estructura Javascript ● Por ejemplo, podemos tener: ● var data = eval('<JSON STRING>') ● Luego, la variable data tendra la lista, la estructura o el valor primitivo que represente el string JSON ● Podemos usarlo para acceder a campos por ejemplo ● alert(data.name);
  • 60. jQuery + JSON + Java (Web) ● Los tres elementos pueden ser combinados para construir aplicaciones web empresariales ● jQuery, junto a su bibilioteca de widgets, puede utilizarse para construir las vistas de nuestra aplicacion ● Los componentes Java (Servlets, Web services, EJBs) pueden utilizarse para implementar el backend server side de la aplicacion ● JSON puede ser usado como formato de intercambio de datos
  • 61. JSON + Servlets ● Una forma simple de exponer informacion desde el servidor, es utilizar Servlets (o servicios REST) para enviar y recibir informacion ● Necesitamos una forma simple de transformar objetos desde y hacia el formato JSON ● Una libreria interesante, es google-gson, la cual provee mecanismos para convertir automaticamente desde y hacia JSON, objetos Java
  • 62. google-gson ● Se encarga de la serializacion/deserializacion JSON-JAVA ● Gson gson = new Gson(); ● gson.toJson(1); ==> imprime 1 ● gson.toJson("abcd"); ==> imprime "abcd" ● gson.toJson(new Long(10)); ==> imprime 10 ● int[] values = { 1 }; ● gson.toJson(values); ==> imprime [1]
  • 63. google-gson ● int one = gson.fromJson("1", int.class); ● Integer one = gson.fromJson("1", Integer.class); ● Long one = gson.fromJson("1", Long.class); ● Boolean false = gson.fromJson("false", Boolean.class); ● String str = gson.fromJson(""abc"", String.class); ● String anotherStr = gson.fromJson("["abc"]", String.class);
  • 64. jQuery UI ● Es un framework construido sobre jQuery, que provee efectos de animacion, widgets (controles), efectos y temas ● Puede ser usado para construir interfaces graficas con un alto nivel de interactividad y belleza grafica ● Entrar a: ● http://jqueryui.com/ ● http://jqueryui.com/demos/
  • 65. jQuery UI – Ejemplo sencillo ● Para agregar soporte en una pagina, agregamos al head: ● <link type="text/css" href="css/themename/jquery- ui-1.8.14.custom.css" rel="Stylesheet" /> ● <script type="text/javascript" src="js/jquery- 1.4.4.min.js"></script> ● <script type="text/javascript" src="js/jquery-ui- 1.8.14.custom.min.js"></script>
  • 66. jQuery UI – Ejemplo sencillo ● Supongamos que queremos agregar un date picker a la pagina ● Agregamos lo siguiente: <input type="text" name="date" id="date" /> ● Y luego, en la funcion onReady() $('#date').datepicker(); ● Y obtenemos:
  • 67. jQuery UI – Ejemplo sencillo