Guías de Make it Real
  • Introduction
  • Preparación
    • Conceptos básicos
    • El editor de texto
    • La línea de comandos
    • Git y Github
  • Git
    • Instalación y configuración
    • Conceptos y comandos esenciales
    • Ignorando archivos y carpetas
    • Trabajando con ramas
    • Repositorios remotos
    • Etiquetas
    • Reescribiendo la historia
    • Stashing
    • Github
  • HTML y CSS
    • Introducción a HTML
    • Introducción a CSS
    • Más elementos de HTML
    • Tablas
    • Formularios
    • El modelo de caja en CSS
    • Fondos (backgrounds)
    • Posicionamiento
    • Selectores CSS
    • Bordes, sombras y gradientes
    • Media Queries
    • Unidades en CSS
    • Flexbox
  • Bootstrap 3
    • Primeros pasos
    • Elementos básicos de HTML
    • Componentes
    • La grilla
    • Personalizando Bootstrap
    • Utilizando plantillas
  • Bootstrap 4
    • Primeros pasos
    • Elementos básicos de HTML
    • Componentes
    • La grilla
    • Clases utilitarias
    • Personalizando Bootstrap
  • Ruby
    • Primeros pasos
    • Tipos y operadores
    • Variables y entrada de usuario
    • Condicionales
    • Ciclos
    • Arreglos
    • Más cadenas de texto
    • Hashes
    • Métodos
    • Manipulación de archivos
    • Gemas
  • Programación Orientada a Objetos en Ruby
    • Clases y objetos
    • Métodos y atributos de clase
    • Herencia
    • Módulos
    • Excepciones
  • JavaScript I
    • Primeros pasos
    • Tipos y operadores
    • Variables
    • Condicionales
    • Ciclos
    • Arreglos
    • Más cadenas de texto
    • Funciones
    • Objetos literales
    • Manipulación de archivos
  • JavaScript en el navegador
    • Primeros pasos
    • Manipulando HTML
    • Escuchando eventos
    • Local Storage
    • History API
    • Canvas
    • Notificaciones Web
    • Audio y Video
    • Arrastrar y soltar
    • JSON
    • Realizando peticiones HTTP
  • jQuery
    • Primeros pasos
    • Manipulando HTML
    • Escuchando eventos
    • Plugins
    • Realizando peticiones con AJAX
  • JavaScript II
    • Prototipos
    • Librerías (Node.js)
    • ES6
    • Uso de this (call, apply, bind)
    • Programación funcional
    • Scope, hoisting, closures
    • Programación asincrónica
    • Testing
  • HTTP y Sinatra
    • Primeros pasos con Sinatra
    • El protocolo HTTP
    • Rutas
    • Formularios
    • Cookies y sesión
  • Bases de datos
    • Bases de datos relacionales
    • SQL
    • DDL
    • MongoDB
  • Ruby on Rails I
    • Primeros pasos
    • Arquitectura
    • Rutas
    • Layouts y rendering
    • ActiveRecord - Modelos
    • ActiveRecord - Migraciones
    • ActiveRecord - Validaciones
    • ActiveRecord - Asociaciones
    • ActiveRecord - Scopes
    • ActiveRecord - Callbacks
    • Recursos REST
    • Formularios
    • Autenticación con Devise
    • Sass y Bootstrap
    • Envío de correos
    • Carga de imágenes
    • Seeds
    • Heroku
  • Ruby on Rails II
    • Usando JavaScript (y jQuery) en Rails
    • Testing en Ruby
    • Testing en Rails
    • Creando una Web API
    • Web Sockets
  • Express.js
    • Primeros Pasos
    • El protocolo HTTP
    • Rutas
    • Vistas
    • Middlewares y manejo de errores
    • Formularios
    • Cookies y sesión
  • Express.js II
    • Mongoose
    • Web Sockets
    • Autenticación
    • Envío de correos
    • Cargar imágenes
    • Deployment
    • Testing
    • Creando una Web API
  • React
    • Primeros pasos
    • JSX
    • Componentes
    • Más sobre estado
    • Formularios
    • Peticiones HTTP con Axios
    • React Hooks
    • React Context
    • React Bootstrap
    • React Router
    • Carga de Imágenes
    • Testing
    • Estructura de carpetas
    • Componentes de clase
  • Redux
    • Primeros pasos
    • Action creators
    • Usando la librería react-redux
    • Middlewares
    • Operaciones asincrónicas con redux-thunk
    • Combinando funciones reductoras
    • Testing
    • Redux Tool Kit
  • Algoritmos
    • Describiendo un algoritmo
    • Complejidad (Big-O)
    • Estructuras de datos
    • Recursión
    • Ordenamiento
    • Búsqueda
    • Programación dinámica
  • Python
    • Primeros Pasos
    • Tipos y Variables
    • Funciones
    • Control de Flujo
    • Listas
    • Ciclos
    • Diccionarios, Tuplas y Sets
  • NumPy
    • Primeros Pasos
    • Arreglos
    • Arreglos Multidimensionales
    • Estadística con NumPy
    • Distribución Estadística
  • Pandas
    • Primeros Pasos
    • Inspección y Selección de Datos
    • Modificando Dataframes
    • La Función Lambda
    • Aggregates en Pandas
    • Múltiples Tablas
Powered by GitBook
On this page
  • Buscando y seleccionando plugins
  • Utilizando plugins
  • Creando un plugin
  1. jQuery

Plugins

PreviousEscuchando eventosNextRealizando peticiones con AJAX

Last updated 2 years ago

Es posible extender la funcionalidad de jQuery a través de plugins. Existe una infinidad de plugins en Internet que te van a permitir realizar todo tipo de tareas como validar formularios, crear carruseles de imágenes, autocompletar campos, crear pestañas, datepickers (selectores de fechas), ventanas modales, etc.

De hecho, existe una colección plugins llamada , que es mantenida por los mismos de jQuery. Por otro lado, varios de los componentes de Bootstrap como modales, tabs, dropdowns, etc. fueron creados como plugins.

Buscando y seleccionando plugins

El primero paso es buscar un plugin que solucione tu problema. Si buscas en Internet vas a encontrar muchas opciones así que es posible que debas seleccionar uno de ellos.

Imagina que queremos crear un campo en donde el usuario pueda seleccionar un color, es decir, un colorpicker. Si buscas en Internet "colorpicker jquery" vas a encontrar varios resultados. Lo que debes tener en cuenta es lo siguiente:

  1. Que sea de código abierto, que el código fuente sea público y que esté publicado en Github, Bitbucket u otro hosting de Git.

  2. Que sea gratis (a menos de que estés dispuesto a pagar). Incluso si es de código abierto puede que sea pago para uso comerciales .

  3. Que esté siendo mantenido (puedes revisar cuándo fue el último commit), el número de estrellas, etc.

  4. Si estás utilizando Bootstrap intenta buscar uno que esté diseñado específicamente para trabajar con este framework.

En este caso vamos a utilizar que tiene más de 800 estrellas en Github, la licencia es MIT (una de las más abiertas) y el último commit no fue hace mucho tiempo.

Utilizando plugins

Desafortunadamente la documentación de muchos plugins no es muy buena, pero generalmente vas a necesitar descargar un archivo JavaScript con el código del plugin y un archivo CSS con los estilos (aunque esto depende de la documentación del plugin).

En nuestro caso vamos a copiar y pegar el contenido de los archivos jquery.minicolors.min.js y jquery.minicolors.css. El archivo index.html quedó de la siguiente forma:

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Minicolors example</title>
  <link rel="stylesheet" href="jquery.minicolors.css">
</head>
<body>
  <input type="text" id="colorpicker">

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="jquery.minicolors.min.js"></script>
  <script>
    $("#colorpicker").minicolors();
  </script>
</body>
</html>

Primero definimos un input con id colorpicker. Luego agregamos la referencia a jQuery y al JavaScript del plugin (el orden es importante). También agregamos la referencia del CSS en el head. Y por último configuramos el plugin con la línea $("#colorpicker").minicolors();.

Cuando lo probamos salió un error en la consola diciendo que no podía encontrar el archivo jquery.minicolors.png, así que también lo tuvimos que descargar de Github.

Creando un plugin

Un plugin no es más que un método que se le agrega a jQuery con una funcionalidad específica. Vamos a hacer un ejemplo muy simple, un plugin que le cambia el color de la fuente a rojo:

$.fn.rojizar = function() {
  this.css("color", "red");
}

Este código lo puedes guardar en un archivo JS y publicarlo en Internet.

Para usarlo simplemente debes seleccionar los elementos con jQuery y llamar el método rojizar. Por ejemplo, para cambiar el color de todos los párrafos del documento a rojo haríamos lo siguiente:

$("p").rojizar();

Y eso es todo!

El resultado final lo puedes ver en y el código fuente en .

jQuery UI
como este
jQuery Minicolors
este enlace
este otro enlace