SlideShare a Scribd company logo
1 of 36
Parte 2

Ing. César Eduardo Suárez Trujillo
1           PROTOTYPE

Para empezar, debemos dejar a un lado todo lo que sabemos de programación
Orientada a objetos. Todo en javascript son objetos, un arreglo en javascript es
simplemente un objeto con valores y métodos como push o pop.


                     1.   var myArray = [1, 2];
                     2.   myArray.push(3);
                     3.   myArray.reverse();
                     4.   myArray.pop();
                     5.   var length = myArray.length;
Javascript es un lenguaje que no maneja clases y es un lenguaje muy
dinámico que me permite agregar métodos a un objeto según sea
necesario.

                 var point = {
                    x : 10,
                    y : 5,
                    add: function(otherPoint) {
                       this.x += otherPoint.x;
                       this.y += otherPoint.y;
                    }
                 };


Este ejemplo ilustra un objeto que representa un punto y también
contiene un método para agregarlo.
Este método estaría en cada una de las implementaciones de
cada punto. Por memoria es mejor tener una implementación
del método agregar que sea compartida por cada uno de los
objetos.
Revisando un arreglo desde la consola, tenemos lo siguiente:
Que podríamos interpretar
Podríamos crear entonces un objeto que simplemente se
comporte como un arreglo, de la siguiente forma


 // Objeto vacio
 var obj = {};

 // herededa el mismo prototype de una objeto array
 obj.__proto__ = Array.prototype;

 // Podemos invocar el metodo push
 obj.push(3);


 Esto realmente viene siendo lo siguiente


  var o = new Array();
  o.push(3);
Tenemos el siguiente ejemplos:

                  var casita =function (color){
                    this.color=color;

                      this.abrirPuerta=function(){
                        console.log("abrio"+this.color);

                      }

                  }

                  var casa1=new casita("rojo");
                  casa1.abrirPuerta();
                  var casa2=new casita("verde");
                  casa2.abrirPuerta();
En un diagrama esto se vería de la siguiente forma:

                  color
                 abripuerta
       casa1


                                 Casita.prot
                color              otype
                abripuerta
       casa2
                                         Prototype


                                   casita
Implementando nuestro método de abrirpuerta, obtendríamos lo siguiente

            var casita =function (color){
              this.color=color;

            }

            Casita.prototype.abrirPuerta=function(){
                 console.log("abrio"+this.color);

                }

            var casa1=new casita("rojo");
            casa1.abrirPuerta();
            var casa2=new casita("verde");
            casa2.abrirPuerta();
color

casa1
                               abripuerta
                 Casita.prot
        color      otype


casa2
                         Prototype
2     JQUERY UI

Biblioteca de componentes reusables para el framework
jQuery, que añaden un conjunto de plugins, widgets y
efectos.




                http://jqueryui.com/
Principales elementos:


                          Draggable
                          Droppable
Interacciones             Resizable
                          Selectable
                          Sortable



                          Accordion
                          Autocomplete
                          Button
   Widgets                Datepicker
                          Dialog
                          Progressbar
                          Slider
                          Tabs
Utilidades   Position
             Widget



             Effect
             Show
             Hide
             Toggle
             Color
  Efectos
             Animation
             Add Class
             Remove Class
             Toggle Class
             Switch class
Drag and Drop

Jquery UI provee la funcionalidad de arrastrar elementos por todo el
documento usando su método draggable(). Para definir un elemento
como destino de un objeto que se arrastra se utiliza el método
droppable().
Resizable

Este método nos provee la posibilidad de cambiar el tamaño de los
elementos dinámicamente de cara al usuario. Esta requiere adicionar
el tema css que viene una lalibreria.

           $( "#resizable" ).resizable();
Sortable

Con este método podemos reorganizar los elementos
dentro de este(en cuanto a posición) arrastrando cada uno
de los elementos que se quiere reubicar.




   $( "#sortable" ).sortable();
Widgets

Los widgets son una pequeñas aplicaciones que tiene unas
funcionalidades especificas. jQuery UI tienes las siguientes:

              Accordion
              Autocomplete
              Button
              Datepicker
              Dialog
              Progressbar
              Slider
              Tabs
Acordion

Me permite crear una serie de secciones, que se van
desplegando según interactúe sobre los cabezotes de estas
Efectos

Los efectos de la librería jQuery standard son realmente limitados
por no decir que se limitan a uno solo. jQuery UI nos trae
muchísimas mas posibilidades y nos da la posibilidad también de
realizar animaciones de color (transiciones de color)
3     PLUGINS

Algo elemental es que, creo que el mundo no necesita mas
slider plugins , aunque no quiere decir que no podamos
hacer el nuestro y saber como hacer un puglin
Hay dos objetos que podemos extender, de entre los cuales debemos elegir
según sea su fin:

1-El objeto jQuery se extiende cuando se necesita crear una función
genérica que no necesita interactuar con los elementos DOM de la página.
Cuando creamos una función bajo este objeto, la forma de llamarlo es
$.mifuncion. Ejemplos de este tipo de funciones, tenemos por ejemplo las
funciones de Ajax como $.post

2-El objeto jQuery.fn se extiende cuando queremos añadir métodos al
“wrap” que jQuery hace a los objetos DOM. Cuando añadimos una función
a este objeto, la forma de llamarlo sería $(domElement).mifuncion().
El método extend() es el método que nos permite incrementar la
funcionalidad de jQuery, pues todo el código de nuestro plugin debe
de ir definido dentro de él.



                  jQuery.fn.extend(
                     red: function(){
                        /*Código aquí*/
                     };
                  );
Este mini plugin nos pintara todos los elementos que invoquemos
con este método de color gris.

         jQuery.fn.extend({
             colorear: function(){
                /*Recorre todos los elementos
         encapsulados*/
                this.each(function(){
                   /*Aquí se cambia el contexto, por lo
         que 'this' se refiere al elemento
                   DOM por el que se está pasando*/
                   jQuery(this).css("color",”#CCC");
                });
             }
         });
USANDO PLUGINS DE TERCEROS

En la mayoría de casos usar plugins de terceros es la salida
rápida en nuestros proyectos. Esta es una lista de algunos
muy útiles en nuestros proyectos.

Paginas con listas de plugins


    http://www.1stwebdesigner.com/css/jquery-plugins-2011/
    http://www.smashingapps.com/2011/12/26/best-of-2011-best-
    useful-jquery-plugins-and-tutorials.html
    http://savedelete.com/100-best-jquery-plugins-sorted-by-kind.html
    http://www.webdesignerwall.com/demo/jquery/
4      JQUERY MOBILE

jQuery mobile es el framework de javascript para desarrollo
de aplicaciones web para moviles basado en en jQuery.
CARACTERISTICAS
• jQuery Mobile se puede considerar como un plugin de
  jQuery, por tanto su forma de trabajo es la mismas.
• Nos brinda herramientas para construir sitios web para
  móviles (no solo código javascript) HTML y CSS.
• Soporte completo de HMTL5
• Eventos de gestos (tacto)
• Maneja temas como jQueryUI
• Plataformas compatibles:
PRIMERO PASOS
      jQuery Mobile provee una serie de interfaces graficas con soporte de eventos
      táctiles y un sistema de navegación animado basado potencializado con
      AJAX.

      Es un documento HTML5 por tanto inicia como tal
                                  <!DOCTYPE html>
      Bueno y seguimos con los scripts necesarios
     <head>
     <title>Page Title</title>
     <meta name="viewport" content="width=device-width, initial-scale=1">
     <link rel="stylesheet"
href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />
     <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
     <script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-
1.1.0.min.js"></script>
     </head>
Las paginas son div cuto atributo data-role es igual a page. Un
documento puede tener múltiples paginas y esta se identificaran
simplemente con el ID


       <div data-role="page">
            ...
       </div>

Elementos básicos internos

     <div data-role="page">
          <div data-role="header">...</div>
          <div data-role="content">...</div>
          <div data-role="footer">...</div>
     </div>
Tenemos que saber que existen dos tipos de llamados. Uno que son links
“internos” y los links externos. Los links internos son realmente paginas
que se crean en el mismo documentos html y tiene un identificador, se
invocan con #id y pueden tener efectos a la hora de ser llamadas y al ser
internas no requieren una recarga de la pagina.

Lo links externos se tiene que expesificarse de la siguiente forma



   <a href="multipage.html" rel="external">Link</a>




        http://www.smdigital.com.co/clientes/pruebamovil/
MI PRIMERA PAGINA
CREACIÓN DE NUESTROS
     TEMPLATES




 http://jquerymobile.com/themeroller/
DUDANDO DE JQUERY
Escoger un framework no implica un
matrimonio, simplemente un punto de partida para que todos
en el equipo hablemos el mismo idioma. Dentro de los
frameworks más populares, jQuery no es precisamente el más
rápido, tampoco el mas lento, pero si el más popular .

Podremos ver una prueba de velocidad en este link (aun no he
visto una que tenga la ultima version de jQuery)

           http://mootols.net/slickspeed/
9       REFERENCIAS Y OTRO LINKS

• Jquery.com
• http://jquerymobile.com/
• Wikipedia.com
• Javascript and CSS Development with jQuey –Richard York
• http://addictedtonew.com/archives/414/creating-a-jquery-
  plugin-from-scratch
     /
• http://www.cristalab.com/tutoriales/crear-plugins-para-jquery-
  c251l/
• http://msdn.microsoft.com/en-us/magazine/ff852808.aspx
•   http://fgnass.github.com/spin.js/ (cargador hecho sin imagenes)
•   http://embeddedjs.com/
•   http://www.linkedin.com/groups/jQuery-
    100943?home=&gid=100943&trk=anet_ug_hm / Grupo de Linkedin
•   http://knockoutjs.com/
•   https://github.com/BorisMoore/jsrender
•   http://www.codiqa.com/
•   http://addictedtonew.com/archives/414/creating-a-jquery-plugin-
    from-scratch/

More Related Content

What's hot (20)

Clase 12 jQuery basico
Clase 12  jQuery basicoClase 12  jQuery basico
Clase 12 jQuery basico
 
Interfaces Usuario 3
Interfaces Usuario 3Interfaces Usuario 3
Interfaces Usuario 3
 
Swing
SwingSwing
Swing
 
Clase 6 objetos de javaScript
Clase 6 objetos de javaScriptClase 6 objetos de javaScript
Clase 6 objetos de javaScript
 
Clase 7 objetos globales de javaScript
Clase 7 objetos globales de javaScriptClase 7 objetos globales de javaScript
Clase 7 objetos globales de javaScript
 
Clase 5 funciones en javaScript
Clase 5 funciones en javaScriptClase 5 funciones en javaScript
Clase 5 funciones en javaScript
 
Introducción a JQuery
Introducción a JQueryIntroducción a JQuery
Introducción a JQuery
 
Jyoc java-cap10 clases complementarias y enumerados
Jyoc java-cap10 clases complementarias y enumeradosJyoc java-cap10 clases complementarias y enumerados
Jyoc java-cap10 clases complementarias y enumerados
 
Confección de interfaces de usuario con JAVA - SWING
Confección de interfaces de usuario con JAVA - SWINGConfección de interfaces de usuario con JAVA - SWING
Confección de interfaces de usuario con JAVA - SWING
 
Prog gui
Prog guiProg gui
Prog gui
 
Jyoc java-cap01 tipos de datos y entrada-salida
Jyoc java-cap01 tipos de datos y entrada-salidaJyoc java-cap01 tipos de datos y entrada-salida
Jyoc java-cap01 tipos de datos y entrada-salida
 
Web Mapping con Django
Web Mapping con DjangoWeb Mapping con Django
Web Mapping con Django
 
Guiajquery
GuiajqueryGuiajquery
Guiajquery
 
Programación III (Java) - 06 Ventanas
Programación III (Java) - 06 VentanasProgramación III (Java) - 06 Ventanas
Programación III (Java) - 06 Ventanas
 
Java GUI La librería Swing
Java GUI La librería Swing Java GUI La librería Swing
Java GUI La librería Swing
 
Introduccion a Doctrine 2 ORM
Introduccion a Doctrine 2 ORMIntroduccion a Doctrine 2 ORM
Introduccion a Doctrine 2 ORM
 
As3.tutorial
As3.tutorialAs3.tutorial
As3.tutorial
 
Clase 15
Clase 15Clase 15
Clase 15
 
Swing
SwingSwing
Swing
 
AWT- JAVA
AWT- JAVAAWT- JAVA
AWT- JAVA
 

Viewers also liked

Viewers also liked (20)

Petits mots de voisins
Petits mots de voisinsPetits mots de voisins
Petits mots de voisins
 
Tema 8
Tema 8Tema 8
Tema 8
 
Adolescencia
AdolescenciaAdolescencia
Adolescencia
 
Montreal
MontrealMontreal
Montreal
 
Parfums feminins.
Parfums feminins. Parfums feminins.
Parfums feminins.
 
Tema 12
Tema 12Tema 12
Tema 12
 
MEMOIRE DESS
MEMOIRE DESSMEMOIRE DESS
MEMOIRE DESS
 
Aminoacidos
AminoacidosAminoacidos
Aminoacidos
 
aparatos digestivos
aparatos digestivosaparatos digestivos
aparatos digestivos
 
Ejercicios ciencias de la tierra
Ejercicios ciencias de la tierraEjercicios ciencias de la tierra
Ejercicios ciencias de la tierra
 
Eegg presentation
Eegg presentationEegg presentation
Eegg presentation
 
Reproduccion
ReproduccionReproduccion
Reproduccion
 
Tema 7 equilibrio
Tema 7 equilibrioTema 7 equilibrio
Tema 7 equilibrio
 
tatouages
tatouagestatouages
tatouages
 
Expériences gestuelles - NUI Day 2015
Expériences gestuelles - NUI Day 2015Expériences gestuelles - NUI Day 2015
Expériences gestuelles - NUI Day 2015
 
Part 8
Part 8Part 8
Part 8
 
Les requins
Les requinsLes requins
Les requins
 
Skills cv a de clerck 2016 v3 fr
Skills cv a de clerck 2016 v3 frSkills cv a de clerck 2016 v3 fr
Skills cv a de clerck 2016 v3 fr
 
Temoquimica
TemoquimicaTemoquimica
Temoquimica
 
La frise de la bataille de Trajan
La frise de la bataille de TrajanLa frise de la bataille de Trajan
La frise de la bataille de Trajan
 

Similar to Jquery 2

Extender Jquery para crear componentes web personalizados
Extender Jquery  para crear componentes web personalizadosExtender Jquery  para crear componentes web personalizados
Extender Jquery para crear componentes web personalizadosHéctor Curbelo Barrios
 
11 tips para optimizar el uso de jQuery como framework de JavaScript
11 tips para optimizar el uso de jQuery como framework de JavaScript11 tips para optimizar el uso de jQuery como framework de JavaScript
11 tips para optimizar el uso de jQuery como framework de JavaScriptInterGraphicDESIGNS
 
Seminario jquery, html5 y wicket
Seminario jquery, html5 y wicketSeminario jquery, html5 y wicket
Seminario jquery, html5 y wicketAdrià Solé Orrit
 
Introducción a la Programación con Javascript. Clase 3
Introducción a la Programación con Javascript. Clase 3Introducción a la Programación con Javascript. Clase 3
Introducción a la Programación con Javascript. Clase 3xjordi
 
OOP.JAVAS pjs
OOP.JAVAS pjsOOP.JAVAS pjs
OOP.JAVAS pjsJona Val
 
Programacion Orientada Objetos.pdf
Programacion Orientada Objetos.pdfProgramacion Orientada Objetos.pdf
Programacion Orientada Objetos.pdfSantiagoValenzuela24
 
LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"Alberto Ruibal
 
El Mal Odiado Javascript
El Mal Odiado JavascriptEl Mal Odiado Javascript
El Mal Odiado JavascriptEl Jota
 
La magia de jquery
La magia de jqueryLa magia de jquery
La magia de jqueryAngelDX
 
Resumen el gran libro de andorid
Resumen el gran libro de andoridResumen el gran libro de andorid
Resumen el gran libro de andoridJilton Delgado
 
Drupal7 para desarrolladores
Drupal7 para desarrolladoresDrupal7 para desarrolladores
Drupal7 para desarrolladoresPedro Cambra
 

Similar to Jquery 2 (20)

Extender Jquery para crear componentes web personalizados
Extender Jquery  para crear componentes web personalizadosExtender Jquery  para crear componentes web personalizados
Extender Jquery para crear componentes web personalizados
 
11 tips para optimizar el uso de jQuery como framework de JavaScript
11 tips para optimizar el uso de jQuery como framework de JavaScript11 tips para optimizar el uso de jQuery como framework de JavaScript
11 tips para optimizar el uso de jQuery como framework de JavaScript
 
Seminario jquery, html5 y wicket
Seminario jquery, html5 y wicketSeminario jquery, html5 y wicket
Seminario jquery, html5 y wicket
 
Taller de Jquery
Taller de JqueryTaller de Jquery
Taller de Jquery
 
Introducción a la Programación con Javascript. Clase 3
Introducción a la Programación con Javascript. Clase 3Introducción a la Programación con Javascript. Clase 3
Introducción a la Programación con Javascript. Clase 3
 
Introduccion a j_query
Introduccion a j_queryIntroduccion a j_query
Introduccion a j_query
 
Guia jQuery INCES Militar - Kurt Gude
Guia jQuery INCES Militar - Kurt GudeGuia jQuery INCES Militar - Kurt Gude
Guia jQuery INCES Militar - Kurt Gude
 
Javascript OOP
Javascript OOPJavascript OOP
Javascript OOP
 
OOP.JAVAS pjs
OOP.JAVAS pjsOOP.JAVAS pjs
OOP.JAVAS pjs
 
Js
JsJs
Js
 
Programacion Orientada Objetos.pdf
Programacion Orientada Objetos.pdfProgramacion Orientada Objetos.pdf
Programacion Orientada Objetos.pdf
 
LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"
 
Gwt III - Avanzado
Gwt III - AvanzadoGwt III - Avanzado
Gwt III - Avanzado
 
El Mal Odiado Javascript
El Mal Odiado JavascriptEl Mal Odiado Javascript
El Mal Odiado Javascript
 
La magia de jquery
La magia de jqueryLa magia de jquery
La magia de jquery
 
Android Superstar - Buenas Prácticas
Android Superstar - Buenas PrácticasAndroid Superstar - Buenas Prácticas
Android Superstar - Buenas Prácticas
 
Manual de usuario
Manual de usuarioManual de usuario
Manual de usuario
 
Resumen el gran libro de andorid
Resumen el gran libro de andoridResumen el gran libro de andorid
Resumen el gran libro de andorid
 
Drupal7 para desarrolladores
Drupal7 para desarrolladoresDrupal7 para desarrolladores
Drupal7 para desarrolladores
 
javascript.ppt
javascript.pptjavascript.ppt
javascript.ppt
 

More from Cesar Eduardo Suarez T (8)

SEO Bascio
SEO BascioSEO Bascio
SEO Bascio
 
SEO Basico
SEO BasicoSEO Basico
SEO Basico
 
Phonegap
PhonegapPhonegap
Phonegap
 
Git
Git Git
Git
 
Phonegap
PhonegapPhonegap
Phonegap
 
Introduccion a Internet
Introduccion a InternetIntroduccion a Internet
Introduccion a Internet
 
CakePHP parte 2
CakePHP parte 2CakePHP parte 2
CakePHP parte 2
 
CakePHP
CakePHPCakePHP
CakePHP
 

Recently uploaded

Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxlosdiosesmanzaneros
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilJuanGallardo438714
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 

Recently uploaded (15)

Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 

Jquery 2

  • 1. Parte 2 Ing. César Eduardo Suárez Trujillo
  • 2. 1 PROTOTYPE Para empezar, debemos dejar a un lado todo lo que sabemos de programación Orientada a objetos. Todo en javascript son objetos, un arreglo en javascript es simplemente un objeto con valores y métodos como push o pop. 1. var myArray = [1, 2]; 2. myArray.push(3); 3. myArray.reverse(); 4. myArray.pop(); 5. var length = myArray.length;
  • 3. Javascript es un lenguaje que no maneja clases y es un lenguaje muy dinámico que me permite agregar métodos a un objeto según sea necesario. var point = { x : 10, y : 5, add: function(otherPoint) { this.x += otherPoint.x; this.y += otherPoint.y; } }; Este ejemplo ilustra un objeto que representa un punto y también contiene un método para agregarlo.
  • 4. Este método estaría en cada una de las implementaciones de cada punto. Por memoria es mejor tener una implementación del método agregar que sea compartida por cada uno de los objetos.
  • 5. Revisando un arreglo desde la consola, tenemos lo siguiente:
  • 7. Podríamos crear entonces un objeto que simplemente se comporte como un arreglo, de la siguiente forma // Objeto vacio var obj = {}; // herededa el mismo prototype de una objeto array obj.__proto__ = Array.prototype; // Podemos invocar el metodo push obj.push(3); Esto realmente viene siendo lo siguiente var o = new Array(); o.push(3);
  • 8. Tenemos el siguiente ejemplos: var casita =function (color){ this.color=color; this.abrirPuerta=function(){ console.log("abrio"+this.color); } } var casa1=new casita("rojo"); casa1.abrirPuerta(); var casa2=new casita("verde"); casa2.abrirPuerta();
  • 9. En un diagrama esto se vería de la siguiente forma: color abripuerta casa1 Casita.prot color otype abripuerta casa2 Prototype casita
  • 10. Implementando nuestro método de abrirpuerta, obtendríamos lo siguiente var casita =function (color){ this.color=color; } Casita.prototype.abrirPuerta=function(){ console.log("abrio"+this.color); } var casa1=new casita("rojo"); casa1.abrirPuerta(); var casa2=new casita("verde"); casa2.abrirPuerta();
  • 11.
  • 12. color casa1 abripuerta Casita.prot color otype casa2 Prototype
  • 13. 2 JQUERY UI Biblioteca de componentes reusables para el framework jQuery, que añaden un conjunto de plugins, widgets y efectos. http://jqueryui.com/
  • 14. Principales elementos: Draggable Droppable Interacciones Resizable Selectable Sortable Accordion Autocomplete Button Widgets Datepicker Dialog Progressbar Slider Tabs
  • 15. Utilidades Position Widget Effect Show Hide Toggle Color Efectos Animation Add Class Remove Class Toggle Class Switch class
  • 16. Drag and Drop Jquery UI provee la funcionalidad de arrastrar elementos por todo el documento usando su método draggable(). Para definir un elemento como destino de un objeto que se arrastra se utiliza el método droppable().
  • 17. Resizable Este método nos provee la posibilidad de cambiar el tamaño de los elementos dinámicamente de cara al usuario. Esta requiere adicionar el tema css que viene una lalibreria. $( "#resizable" ).resizable();
  • 18. Sortable Con este método podemos reorganizar los elementos dentro de este(en cuanto a posición) arrastrando cada uno de los elementos que se quiere reubicar. $( "#sortable" ).sortable();
  • 19. Widgets Los widgets son una pequeñas aplicaciones que tiene unas funcionalidades especificas. jQuery UI tienes las siguientes: Accordion Autocomplete Button Datepicker Dialog Progressbar Slider Tabs
  • 20. Acordion Me permite crear una serie de secciones, que se van desplegando según interactúe sobre los cabezotes de estas
  • 21. Efectos Los efectos de la librería jQuery standard son realmente limitados por no decir que se limitan a uno solo. jQuery UI nos trae muchísimas mas posibilidades y nos da la posibilidad también de realizar animaciones de color (transiciones de color)
  • 22. 3 PLUGINS Algo elemental es que, creo que el mundo no necesita mas slider plugins , aunque no quiere decir que no podamos hacer el nuestro y saber como hacer un puglin
  • 23. Hay dos objetos que podemos extender, de entre los cuales debemos elegir según sea su fin: 1-El objeto jQuery se extiende cuando se necesita crear una función genérica que no necesita interactuar con los elementos DOM de la página. Cuando creamos una función bajo este objeto, la forma de llamarlo es $.mifuncion. Ejemplos de este tipo de funciones, tenemos por ejemplo las funciones de Ajax como $.post 2-El objeto jQuery.fn se extiende cuando queremos añadir métodos al “wrap” que jQuery hace a los objetos DOM. Cuando añadimos una función a este objeto, la forma de llamarlo sería $(domElement).mifuncion().
  • 24. El método extend() es el método que nos permite incrementar la funcionalidad de jQuery, pues todo el código de nuestro plugin debe de ir definido dentro de él. jQuery.fn.extend( red: function(){ /*Código aquí*/ }; );
  • 25. Este mini plugin nos pintara todos los elementos que invoquemos con este método de color gris. jQuery.fn.extend({ colorear: function(){ /*Recorre todos los elementos encapsulados*/ this.each(function(){ /*Aquí se cambia el contexto, por lo que 'this' se refiere al elemento DOM por el que se está pasando*/ jQuery(this).css("color",”#CCC"); }); } });
  • 26. USANDO PLUGINS DE TERCEROS En la mayoría de casos usar plugins de terceros es la salida rápida en nuestros proyectos. Esta es una lista de algunos muy útiles en nuestros proyectos. Paginas con listas de plugins http://www.1stwebdesigner.com/css/jquery-plugins-2011/ http://www.smashingapps.com/2011/12/26/best-of-2011-best- useful-jquery-plugins-and-tutorials.html http://savedelete.com/100-best-jquery-plugins-sorted-by-kind.html http://www.webdesignerwall.com/demo/jquery/
  • 27. 4 JQUERY MOBILE jQuery mobile es el framework de javascript para desarrollo de aplicaciones web para moviles basado en en jQuery.
  • 28. CARACTERISTICAS • jQuery Mobile se puede considerar como un plugin de jQuery, por tanto su forma de trabajo es la mismas. • Nos brinda herramientas para construir sitios web para móviles (no solo código javascript) HTML y CSS. • Soporte completo de HMTL5 • Eventos de gestos (tacto) • Maneja temas como jQueryUI • Plataformas compatibles:
  • 29. PRIMERO PASOS jQuery Mobile provee una serie de interfaces graficas con soporte de eventos táctiles y un sistema de navegación animado basado potencializado con AJAX. Es un documento HTML5 por tanto inicia como tal <!DOCTYPE html> Bueno y seguimos con los scripts necesarios <head> <title>Page Title</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" /> <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> <script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile- 1.1.0.min.js"></script> </head>
  • 30. Las paginas son div cuto atributo data-role es igual a page. Un documento puede tener múltiples paginas y esta se identificaran simplemente con el ID <div data-role="page"> ... </div> Elementos básicos internos <div data-role="page"> <div data-role="header">...</div> <div data-role="content">...</div> <div data-role="footer">...</div> </div>
  • 31. Tenemos que saber que existen dos tipos de llamados. Uno que son links “internos” y los links externos. Los links internos son realmente paginas que se crean en el mismo documentos html y tiene un identificador, se invocan con #id y pueden tener efectos a la hora de ser llamadas y al ser internas no requieren una recarga de la pagina. Lo links externos se tiene que expesificarse de la siguiente forma <a href="multipage.html" rel="external">Link</a> http://www.smdigital.com.co/clientes/pruebamovil/
  • 33. CREACIÓN DE NUESTROS TEMPLATES http://jquerymobile.com/themeroller/
  • 34. DUDANDO DE JQUERY Escoger un framework no implica un matrimonio, simplemente un punto de partida para que todos en el equipo hablemos el mismo idioma. Dentro de los frameworks más populares, jQuery no es precisamente el más rápido, tampoco el mas lento, pero si el más popular . Podremos ver una prueba de velocidad en este link (aun no he visto una que tenga la ultima version de jQuery) http://mootols.net/slickspeed/
  • 35. 9 REFERENCIAS Y OTRO LINKS • Jquery.com • http://jquerymobile.com/ • Wikipedia.com • Javascript and CSS Development with jQuey –Richard York • http://addictedtonew.com/archives/414/creating-a-jquery- plugin-from-scratch / • http://www.cristalab.com/tutoriales/crear-plugins-para-jquery- c251l/ • http://msdn.microsoft.com/en-us/magazine/ff852808.aspx
  • 36. http://fgnass.github.com/spin.js/ (cargador hecho sin imagenes) • http://embeddedjs.com/ • http://www.linkedin.com/groups/jQuery- 100943?home=&gid=100943&trk=anet_ug_hm / Grupo de Linkedin • http://knockoutjs.com/ • https://github.com/BorisMoore/jsrender • http://www.codiqa.com/ • http://addictedtonew.com/archives/414/creating-a-jquery-plugin- from-scratch/