jQuery es una biblioteca de JavaScript diseñada para simplificar el recorrido y la manipulación del árbol DOM de HTML , así como el manejo de eventos , la animación CSS y Ajax . [3] Es un software gratuito de código abierto que utiliza la licencia permisiva MIT . [4] En mayo de 2019, jQuery es utilizado por el 73% de los 10 millones de sitios web más populares. [5] El análisis web indica que es la biblioteca de JavaScript más ampliamente implementada por un amplio margen, con al menos de 3 a 4 veces más uso que cualquier otra biblioteca de JavaScript. [5] [6]
Autor (es) original (es) | John Resig |
---|---|
Desarrollador (es) | El equipo de jQuery |
Versión inicial | 26 de agosto de 2006 |
Lanzamiento estable | 3.6.0 / (2 de marzo de 2021 [1] ) |
Repositorio | |
Escrito en | JavaScript |
Plataforma | Ver § Soporte del navegador |
Tamaño | 27–274 KB [2] |
Tipo | Biblioteca de JavaScript |
Licencia | MIT |
Sitio web | jquery |
La sintaxis de jQuery está diseñada para facilitar la navegación por un documento, seleccionar elementos DOM , crear animaciones , manejar eventos y desarrollar aplicaciones Ajax . jQuery también proporciona capacidades para que los desarrolladores creen complementos sobre la biblioteca de JavaScript. Esto permite a los desarrolladores crear abstracciones para interacción y animación de bajo nivel, efectos avanzados y widgets temáticos de alto nivel. El enfoque modular de la biblioteca jQuery permite la creación de potentes aplicaciones web y páginas web dinámicas .
El conjunto de características principales de jQuery —selecciones de elementos DOM, recorrido y manipulación— habilitadas por su motor de selección (llamado "Sizzle" de v1.3), creó un nuevo "estilo de programación", fusionando algoritmos y estructuras de datos DOM. Este estilo influyó en la arquitectura de otros frameworks JavaScript como YUI v3 y Dojo , estimulando luego la creación de la API de Selectores estándar . [7] Posteriormente, este estilo se ha mejorado con una fusión más profunda de algoritmo-datos en un heredero de jQuery, el marco D3.js.
Microsoft y Nokia incluyen jQuery en sus plataformas. [8] Microsoft lo incluye con Visual Studio [9] para su uso dentro de los marcos ASP.NET AJAX y ASP.NET MVC de Microsoft, mientras que Nokia lo ha integrado en la plataforma de desarrollo de widgets Web Run-Time. [10]
Descripción general
jQuery, en esencia, es una biblioteca de manipulación del Modelo de objetos de documento (DOM). El DOM es una representación en estructura de árbol de todos los elementos de una página web. jQuery simplifica la sintaxis para buscar, seleccionar y manipular estos elementos DOM. Por ejemplo, jQuery se puede usar para encontrar un elemento en el documento con una propiedad determinada (por ejemplo, todos los elementos con una etiqueta h1 ), cambiar uno o más de sus atributos (por ejemplo, color, visibilidad) o hacer que responda a un evento ( por ejemplo, un clic del mouse).
jQuery también proporciona un paradigma para el manejo de eventos que va más allá de la selección y manipulación básica de elementos DOM. La asignación de eventos y la definición de la función de devolución de llamada de eventos se realizan en un solo paso en una única ubicación en el código. jQuery también tiene como objetivo incorporar otras funciones de JavaScript muy utilizadas (por ejemplo, fundidos de entrada y salida al ocultar elementos, animaciones mediante la manipulación de propiedades CSS ).
Los principios de desarrollo con jQuery son:
- La separación de JavaScript y HTML: La biblioteca jQuery proporciona la sintaxis simple para añadir eventos manipuladores a la DOM utilizando JavaScript, en lugar de añadir eventos atributos HTML para llamar a funciones de JavaScript. Por lo tanto, anima a los desarrolladores a separar completamente el código JavaScript del marcado HTML.
- Brevedad y claridad: jQuery promueve la brevedad y la claridad con características como funciones "encadenables" y nombres abreviados de funciones.
- Eliminación de incompatibilidades entre navegadores: los motores JavaScript de diferentes navegadores difieren ligeramente, por lo que el código JavaScript que funciona para un navegador puede no funcionar para otro. Al igual que otros kits de herramientas de JavaScript, jQuery maneja todas estas inconsistencias entre navegadores y proporciona una interfaz consistente que funciona en diferentes navegadores.
- Extensibilidad: los nuevos eventos, elementos y métodos se pueden agregar fácilmente y luego reutilizar como un complemento.
Historia
jQuery fue creado originalmente en enero de 2006 en BarCamp NYC por John Resig , influenciado por la biblioteca cssQuery anterior de Dean Edwards . [11] [12] Actualmente es mantenido por un equipo de desarrolladores dirigido por Timmy Willison (con el motor de selección de jQuery, Sizzle, dirigido por Richard Gibson). [13]
jQuery fue originalmente licenciado bajo CC BY-SA 2.5 , y volvió a obtener la licencia del MIT en 2006. [14] A fines de 2006, tenía una licencia doble bajo las licencias GPL y MIT. [15] Como esto generó cierta confusión, en 2012 se eliminó la GPL y ahora solo tiene licencia del MIT. [dieciséis]
Popularidad
- En 2015, jQuery se utilizó en el 62,7% del millón de sitios web principales (según BuiltWith ) y en el 17% de todos los sitios web de Internet. [17]
- En 2017, jQuery se utilizó en el 69,2% de los 1 millón de sitios web principales (según Libscore). [6]
- En 2018, jQuery se utilizó en el 78% de los 1 millón de sitios web principales. [18]
- En 2019, jQuery se usó en el 80% de los 1 millón de sitios web principales (según BuiltWith), [18] y el 74,1% de los 10 millones principales (según W3Techs). [5]
- En abril de 2021, jQuery es utilizado por el 77,8% de los 10 millones de sitios web principales (según W3Techs) . [19]
Características
jQuery incluye las siguientes características:
- Selecciones de elementos DOM utilizando el motor de selección de código abierto de múltiples navegadores Sizzle , un derivado del proyecto jQuery [20]
- Manipulación DOM basada en selectores CSS que usa los nombres y atributos de los elementos, como id y class, como criterios para seleccionar nodos en el DOM
- Eventos
- Efectos y animaciones
- Ajax
- Objetos diferidos y promesas para controlar el procesamiento asincrónico
- Análisis JSON
- Extensibilidad a través de complementos
- Utilidades, como detección de características
- Los métodos de compatibilidad que están disponibles de forma nativa en los navegadores modernos, pero necesitan alternativas para los navegadores más antiguos, como
jQuery.inArray()
yjQuery.each()
. - Compatibilidad con varios navegadores
Soporte del navegador
jQuery 3.0 y posteriores son compatibles con las "versiones actuales-1" (es decir, la versión estable actual del navegador y la versión anterior) de Firefox (y ESR), Chrome , Safari y Edge , así como Internet Explorer 9 y posteriores. En dispositivos móviles, es compatible con iOS 7 y versiones posteriores, y Android 4.0 y versiones posteriores. [21]
Distribución
La biblioteca jQuery generalmente se distribuye como un solo archivo JavaScript que define todas sus interfaces, incluidas las funciones DOM, Eventos y Ajax. Puede incluirse dentro de una página web enlazando a una copia local, o enlazando a una de las muchas copias disponibles en servidores públicos. jQuery tiene una red de entrega de contenido (CDN) alojada por MaxCDN. [22] Google en el servicio de bibliotecas alojadas de Google y Microsoft también alojan la biblioteca. [23] [24]
Ejemplo de vinculación de una copia de la biblioteca localmente (desde el mismo servidor que aloja la página web):
< script src = "jquery-3.5.1.min.js" > script >
Ejemplo de vinculación de una copia de la biblioteca del CDN público de jQuery:
< Guión src = "https://code.jquery.com/jquery-3.5.1.min.js" integridad = "sha256-9 / aliU8dGd2tb6OSsuzixeV4y / faTqgFtohetphbbj0 =" crossorigin = "Anónimo" > script de >
Interfaz
Funciones
jQuery proporciona dos tipos de funciones , funciones de utilidad estáticas y métodos de objeto jQuery . Cada uno tiene su propio estilo de uso.
Ambos se accede a través de identificador de principal de jQuery: jQuery
. Este identificador tiene un alias llamado $
. [25] Se puede acceder a todas las funciones mediante cualquiera de estos dos nombres.
métodos jQuery
La jQuery
función es una fábrica para crear un objeto jQuery que representa uno o más nodos DOM. Los objetos jQuery tienen métodos para manipular estos nodos. Estos métodos (a veces llamados comandos) se pueden encadenar ya que cada método también devuelve un objeto jQuery.
El acceso y la manipulación de múltiples nodos DOM en jQuery generalmente comienza con llamar a la $
función con una cadena de selección de CSS. Esto devuelve un objeto jQuery que hace referencia a todos los elementos coincidentes en la página HTML . $("div.test")
, por ejemplo, devuelve un objeto jQuery con todos los div
elementos de la clase test
. Este conjunto de nodos se puede manipular llamando a métodos en el objeto jQuery devuelto.
Utilidades estáticas
Estas son funciones de utilidad y no actúan directamente sobre un objeto jQuery. Se accede a ellos como métodos estáticos en jQuery o $ identifier. Por ejemplo, $.ajax()
es un método estático.
Modo sin conflicto
jQuery proporciona una $.noConflict()
función, que cede el control del $
nombre. Esto es útil si jQuery se usa en una página web que también vincula otra biblioteca que exige el $
símbolo como su identificador. En el modo sin conflicto, los desarrolladores pueden usarlo jQuery
como reemplazo $
sin perder funcionalidad. [26]
Punto de partida típico
Por lo general, jQuery se usa colocando el código de inicialización y las funciones de manejo de eventos en . Esto lo activa jQuery cuando el navegador ha terminado de construir el DOM para la página web actual.$(handler)
$ ( function () { // Esta función anónima se llama cuando la página ha terminado de cargarse. // Aquí, uno puede colocar código para crear objetos jQuery, manejar eventos, etc. });
o
$ ( fn ); // La función denominada fn, definida en otro lugar, se llama cuando la página se ha cargado.
Históricamente, $(document).ready(callback)
ha sido el idioma de facto para ejecutar código después de que DOM está listo. Sin embargo, desde jQuery 3.0, se anima a los desarrolladores a utilizar la $(handler)
firma mucho más corta en su lugar. [27]
Encadenamiento
Los métodos de objetos jQuery normalmente también devuelven un objeto jQuery, que permite el uso de cadenas de métodos :
$ ( 'div.test' ) . en ( 'clic' , handleTestClick ) . addClass ( 'foo' );
Esta línea busca todos los div
elementos con atributo de clase test
, luego registra un controlador de eventos en cada elemento para el evento "clic", luego agrega el atributo de clase foo
a cada elemento.
Ciertos métodos de objetos de jQuery recuperan valores específicos (en lugar de modificar el estado). Un ejemplo de esto es el val()
método, que devuelve el valor actual de un elemento de entrada de texto . En estos casos, una declaración como $('#user-email').val()
no se puede usar para encadenar, ya que el valor de retorno no hace referencia a un objeto jQuery.
Creando nuevos elementos DOM
Además de acceder a los nodos DOM existentes a través de jQuery, también es posible crear nuevos nodos DOM, si la cadena pasada como argumento a la fábrica $ () parece HTML. Por ejemplo, el siguiente código encuentra un select
elemento HTML y crea un nuevo option
elemento con el valor "VAG" y la etiqueta "Volkswagen", que luego se agrega al menú de selección :
$ ( 'seleccione # marcas de automóviles' ) . append ( $ ( '' ón>) . attr ({ valor : 'VAG' }) . text ( 'Volkswagen' ) );
Ajax
Es posible realizar solicitudes Ajax (con soporte entre navegadores ) $.ajax()
para cargar y manipular datos remotos.
$ . ajax ({ tipo : 'POST' , url : '/process/submit.php' , data : { nombre : 'John' , ubicación : 'Boston' , }, }). luego ( función ( mensaje ) { alerta ( 'Datos guardados:' + mensaje ); }). captura ( función ( XMLHTTPRequest , statusText , errorThrown ) { alerta ( 'suspendido el envío de formularios \ n \ n.' + 'XML Http Request:' + JSON . stringify ( XMLHttpRequest ) + ', \ nstatus texto: ' + statusText + ' , \ nError arrojado: ' + errorThrown ); });
En este ejemplo los Mensajes de Datos name=John
y location=Boston
hasta /process/submit.php
en el servidor. Cuando finaliza esta solicitud, se llama a la función de éxito para alertar al usuario. Si la solicitud falla, alertará al usuario sobre la falla, el estado de la solicitud y el error específico.
El ejemplo anterior utiliza los métodos .then()
y .catch()
para registrar devoluciones de llamada que se ejecutan cuando se completa la respuesta. Estas devoluciones de llamada de promesa deben usarse debido a la naturaleza asincrónica de las solicitudes Ajax .
Complementos de jQuery
La arquitectura de jQuery permite a los desarrolladores crear código de complemento para ampliar su función. Hay miles de complementos de jQuery disponibles en la Web [28] que cubren una variedad de funciones, como ayudantes Ajax, servicios Web , cuadrículas de datos, listas dinámicas, herramientas XML y XSLT , arrastrar y soltar , eventos, manejo de cookies ventanas modales .
Una fuente importante de complementos de jQuery es el subdominio de complementos del sitio web del proyecto jQuery. [28] Sin embargo, los complementos de este subdominio se eliminaron accidentalmente en diciembre de 2011 en un intento de eliminar el spam del sitio. [29] El nuevo sitio es un repositorio alojado en GitHub , que requiere que los desarrolladores vuelvan a enviar sus complementos y cumplan con los nuevos requisitos de envío. [30] jQuery proporciona un "Centro de aprendizaje" que puede ayudar a los usuarios a comprender JavaScript y comenzar a desarrollar complementos de jQuery. [31]
Para crear estos complementos, los desarrolladores pueden optar por escribir su propio código desde cero o construir sobre una estructura existente como jQuery Boilerplate .
Historial de versiones
Versión | Versión inicial | Última actualización | Tamaño reducido (KB) | Notas adicionales |
---|---|---|---|---|
1.0 | 26 de agosto de 2006 | Primera versión estable | ||
1.1 | 14 de enero de 2007 | |||
1.2 | 10 de septiembre de 2007 | 1.2.6 | 54,5 | |
1.3 | 14 de enero de 2009 | 1.3.2 | 55,9 | Sizzle Selector Engine introducido en el núcleo |
1.4 | 14 de enero de 2010 | 1.4.4 | 76,7 | |
1,5 | 31 de enero de 2011 | 1.5.2 | 83,9 | Gestión de devolución de llamada diferida, reescritura del módulo ajax |
1,6 | 3 de mayo de 2011 | 1.6.4 (12 de septiembre de 2011 | ) [32]89,5 | Mejoras significativas en el rendimiento de las funciones attr () y val () |
1,7 | 3 de noviembre de 2011 | 1.7.2 (21 de marzo de 2012 | ) [33]92,6 | Nuevas API de eventos: .on () y .off (), mientras que las API antiguas aún son compatibles. |
1.8 | 9 de agosto de, 2012 | 1.8.3 (13 de noviembre de 2012 | ) [34]91,4 | Sizzle Selector Engine reescrito, animaciones mejoradas y flexibilidad $ (html, props). |
1,9 | 15 de enero de 2013 | 1.9.1 (4 de febrero de 2013 | ) [35]90,5 | Eliminación de interfaces obsoletas y limpieza de código |
1,10 | 24 de mayo de 2013 | 1.10.2 (3 de julio de 2013 | ) [36]90,9 | Se incorporaron correcciones de errores y diferencias informadas de los ciclos beta 1.9 y 2.0 |
1,11 | 24 de enero de 2014 | 1.11.3 (28 de abril de 2015 | ) [37]93,7 | |
1.12 | 8 de enero de 2016 | 1.12.4 (20 de mayo de 2016 | ) [38]94,9 | |
2.0 | 18 de abril de 2013 | 2.0.3 (3 de julio de 2013 | )81,7 | Se eliminó la compatibilidad con IE 6–8 para mejorar el rendimiento y reducir la |
2.1 | 24 de enero de 2014 | 2.1.4 (28 de abril de 2015 | )82,4 | |
2.2 | 8 de enero de 2016 | 2.2.4 (20 de mayo de 2016 | )83,6 | |
3,0 | 9 de junio de 2016 | [39]3.0.0 (9 de junio de 2016 | )84,3 | Promesas / soporte A + para diferidos, $ .ajax y $ .when, compatible con .data () HTML5 |
3.1 | 7 de julio de 2016 | 3.1.1 (23 de septiembre de 2016 | )84,7 | Se agregó jQuery.readyException, los errores del controlador listo ahora no se silencian |
3.2 | 16 de marzo de 2017 | [40]3.2.1 (20 de marzo de 2017 | )84,6 | Se agregó soporte para recuperar el contenido de los elementos y se desaprobaron varios métodos antiguos. |
3.3 | 19 de enero de 2018 | [41]3.3.1 (20 de enero de 2018 | ) [42]84,9 | En desuso de funciones antiguas, las funciones que aceptan clases ahora también las admiten en formato de matriz. |
3.4 | 10 de abril de 2019 | [43]3.4.1 (1 de mayo de 2019) [44] | 86,1 | Mejoras de rendimiento nonce y nomodule soporte, correcciones para elementos de radio, una pequeña corrección de seguridad. |
3,5 | 10 de abril de 2020 | [1]3.5.1 (4 de mayo de 2020) [45] | 87,4 | Correcciones .even() y .odd() métodos de seguridad , jQuery.trim obsoletos |
3.6 | 2 de marzo de 2021 | 3.6.0 (2 de marzo de 2021) [46] | 90,0 | Corrección de errores, devuelve JSON cuando hay un error JSONP |
Marco de prueba
QUnit es un marco de automatización de pruebas que se utiliza para probar el proyecto jQuery. El equipo de jQuery lo desarrolló como una biblioteca de prueba de unidades interna. [47] El equipo de jQuery lo usa para probar su código y complementos, pero puede probar cualquier código JavaScript genérico, incluido el código JavaScript del lado del servidor. [47]
A partir de 2011, el equipo de pruebas de jQuery usa QUnit con TestSwarm para probar cada versión de la base de código de jQuery. [48]
Ver también
- Comparación de marcos de JavaScript
- jQuery Mobile
- interfaz de usuario de jQuery
Referencias
- ^ a b "¡Lanzamiento de jQuery 3.5.0!" . Blog de jQuery . 2020-04-10 . Consultado el 11 de abril de 2020 .
- ^ "Bibliotecas de código abierto y tamaños de archivo - PageCDN" . pagecdn.com . Consultado el 21 de julio de 2020 .
- ^ "jQuery: La biblioteca JavaScript escribe menos, haz más" . El proyecto jQuery . Consultado el 29 de abril de 2010 .
- ^ "Licencia del proyecto jQuery" . Fundación jQuery . Consultado el 11 de marzo de 2017 .
- ^ a b c "Uso de bibliotecas JavaScript para sitios web" . W3Techs . Archivado desde el original el 15 de noviembre de 2019 . Consultado el 15 de noviembre de 2019 .
jQuery (74,1%) es 3,7 veces más popular que Bootstrap (19,9%).
- ^ a b "Libscore" . Archivado desde el original el 19 de febrero de 2017 . Consultado el 11 de febrero de 2017 .
Los mejores guiones son 1. jQuery (692,981 sitios); 2. jQuery UI (193,680 sitios); 3. SDK de Facebook (175,369 sitios); 4. Twitter Bootstrap JS (158.288 sitios); 5. Modernizr (155.503 sitios).
- ^ " Selectores API nivel 1, recomendación W3C " (21 de febrero de 2013). Este estándar convirtió los "métodos auxiliares" de jQuery en métodos nativos de JavaScript, y el amplio uso de jQuery estimuló la rápida adopción de los
querySelector/querySelectorAll
principales navegadores web. - ^ Resig, John (28 de septiembre de 2008). "jQuery, Microsoft y Nokia" . Blog de jQuery . jQuery . Consultado el 29 de enero de 2009 .
- ^ Guthrie, Scott (28 de septiembre de 2008). "jQuery y Microsoft" . Blog de ScottGu . Consultado el 15 de abril de 2019 .
- ^ "Interfaz de usuario de Guarana: una biblioteca de interfaz de usuario basada en jQuery para Nokia WRT" . Foro Nokia . Archivado desde el original el 16 de agosto de 2011 . Consultado el 30 de marzo de 2010 .
- ^ York, Richard (2009). Inicio del desarrollo de JavaScript y CSS con jQuery . Wiley. pag. 28. ISBN 978-0-470-22779-4.
- ^ Resig, John (31 de octubre de 2007). "Historia de jQuery" . Consultado el 15 de abril de 2019 .
- ^ "El equipo de jQuery" . jquery.com . Fundación JS . Consultado el 22 de mayo de 2019 .
Equipo: Timmy Willison (jQuery Core Lead), Richard Gibson (Sizzle Lead, jQuery Core).
- ^ jquery-under-the-mit-license en jquery.org (2006)
- ^ licencia en jquery.org (archivado en 2010)
- ↑ jquery-licensing-changes en jquery.org (2012)
- ^ "Manejo de 15.000 solicitudes por segundo: el crecimiento detrás de jQuery" . www.maxcdn.com . MaxCDN . 20 de junio de 2015 . Consultado el 2 de julio de 2018 .
- ^ a b "Estadísticas de uso de jQuery (diciembre de 2019)" . trends.builtwith.com . 2019-12-31. Archivado desde el original el 21 de febrero de 2020 . Consultado el 21 de febrero de 2020 .
- ^ "Estadísticas de uso y cuota de mercado de las bibliotecas JavaScript (febrero de 2020)" . W3Techs . 2020-02-21. Archivado desde el original el 21 de febrero de 2020 . Consultado el 21 de febrero de 2020 .
- ^ Resig, John (14 de enero de 2009). "jQuery 1.3 y la Fundación jQuery" . Blog de jQuery . Consultado el 4 de mayo de 2009 .
- ^ Soporte del navegador | jQuery
- ^ jquery.org, Fundación jQuery -. "jQuery CDN" .
- ^ "API de bibliotecas de Google - Guía del desarrollador" . Consultado el 11 de marzo de 2012 .
- ^ "Red de entrega de contenido de Microsoft Ajax" . ASP.net . Microsoft Corporation . Consultado el 15 de abril de 2019 .
- ^ js.foundation, Fundación JS -. "jQuery () | Documentación de la API de jQuery" . api.jquery.com . Consultado el 2 de julio de 2018 .
- ^ "Documentación de la API jQuery.noConflict () jQuery" .
- ^ jquery.org, Fundación jQuery -. "Guía de actualización de jQuery Core 3.0 - jQuery" .
- ^ a b "Complementos" . El proyecto jQuery . Consultado el 15 de abril de 2019 .
- ^ "¿Qué está pasando con el sitio de complementos de jQuery?" . Blog de jQuery . Consultado el 22 de abril de 2015 .
- ^ "jquery / plugins.jquery.com" . GitHub . Consultado el 22 de abril de 2015 .
- ^ "Centro de aprendizaje de jQuery" . Fundación jQuery . Consultado el 2 de julio de 2014 .
- ^ "jQuery 1.6.4 lanzado" . Blog de jQuery . 12 de septiembre de 2011.
- ^ "jQuery 1.7.2 lanzado" . Blog de jQuery . 21 de marzo de 2012.
- ^ "jQuery 1.8.3 lanzado" . Blog de jQuery . 13 de noviembre de 2012.
- ^ "jQuery 1.9.1 lanzado" . Blog de jQuery . 4 de febrero de 2013.
- ^ "Lanzamiento de jQuery 1.10.2 y 2.0.3" . Blog de jQuery . 3 de julio de 2013.
- ^ "Lanzamiento de jQuery 1.11.3 y 2.1.4 - Edición iOS Fail-Safe" . Blog de jQuery . 28 de abril de 2015.
- ^ "Lanzamiento de jQuery 1.12.4 y 2.2.4" . Blog de jQuery . 20 de mayo de 2016.
- ^ Chesters, James (15 de junio de 2016). "JQuery 3.0 tan esperado trae Slim Build" . infoq.com . Consultado el 28 de enero de 2017 .
- ^ "¡Ya salió jQuery 3.2.0!" . Blog de jQuery . 16 de marzo de 2017 . Consultado el 12 de marzo de 2018 .
- ^ "jQuery 3.3.0 - Un fragante ramillete de depreciaciones y ... ¿es esa una característica nueva?" . Blog de jQuery . 2018-01-19 . Consultado el 15 de abril de 2019 .
- ^ "jQuery 3.3.1 - dependencias fijas en la etiqueta de lanzamiento" . Blog de jQuery . 2018-01-20 . Consultado el 15 de abril de 2019 .
- ^ "jQuery 3.4.0 lanzado" . Blog de jQuery . 2018-04-10 . Consultado el 15 de abril de 2019 .
- ^ "jQuery 3.4.1: activación de eventos de enfoque en IE y búsqueda de elementos raíz en iOS 10" . Blog de jQuery . Fundación jQuery.
- ^ "Lanzamiento de jQuery 3.5.1: corrección de una regresión" . Blog de jQuery . Fundación jQuery.
- ^ jquery.org, Fundación jQuery-. "¡Lanzamiento de jQuery 3.6.0! | Blog oficial de jQuery" . Consultado el 27 de marzo de 2021 .
- ^ a b "Historia" . qunitjs.com . Consultado el 15 de abril de 2019 .
- ^ "Wiki del equipo de pruebas de jQuery" .
Otras lecturas
- John Resig (ponente) (13 de abril de 2007). John Resig: Advancing JavaScript with Libraries (video de YouTube) . Teatro YUI . Consultado el 9 de enero de 2018 .
- Krill, Paul (31 de agosto de 2006). "JavaScript, desarrolladores de .Net ayudaron en un proyecto separado" . InfoWorld . Consultado el 15 de abril de 2019 .
- Taft, Darryl K. (30 de agosto de 2006). "jQuery facilita JavaScript, desarrollo AJAX" . eWeek . Consultado el 15 de abril de 2019 .
enlaces externos
- Página web oficial