JavaScript es un lenguaje de programación para interactuar con los navegadores, que proporciona a los sitios Web dinamismo e inmediatez. Todos los navegadores importantes del mercado contienen un intérprete de JavaScript. Cuando aprenda a utilizar su biblioteca jQuery, obtendrá una programación más sencilla y potente que simplificará la manera de interactuar con los documento HTML, manejar eventos, desarrollar animaciones y agregar interacción a las páginas Web. Este libro le enseñará las bases de la programación con JavaScript. Hace énfasis en jQuery lo que le ayudará a liberarse de la complejidad de JavaScript y la naturaleza cambiante entre navegadores. Con este manual no tardará en crear páginas Web, sofisticadas y divertidas, que funcionarán como programas de escritorio, sin apenas programación.ÍndiceIntroducción ¿Qué es JavaScript? Un poco de historia JavaScript está en todas partes ¿Qué es jQuery? HTML: la estructura medular Cómo funcionan las etiquetas HTML CSS: añadir estilo a las páginas Web Anatomía de un estilo Software para programar en JavaScript Programas gratuitos Software comercial Acerca de este libro El enfoque a JavaScript de este libro Organización del libro Convenciones Código fuente Parte I. Primeros pasos con JavaScript 1. Su primer programa de JavaScript Introducirse en la programación ¿Qué es un programa informático? Añadir JavaScript a una página Archivos externos de JavaScript Su primer programa de JavaScript Escribir texto en una página Web Adjuntar un archivo externo de JavaScript Localizar errores La consola de JavaScript de Firefox Mostrar la consola en Internet Explorer 9 Abrir la consola JavaScript de Chrome Acceder a la consola de errores de Safari 2. La gramática de JavaScript Instrucciones Funciones integradas Tipos de datos Números Cadenas Booleanos Variables Crear una variable Usar variables Trabajar con tipos de datos y variables Matemáticas básicas El orden de las operaciones Combinar cadenas Combinar números y cadenas Cambiar valores de variables Tutorial: Usar variables para crear mensajes. Tutorial: Pedir información Matrices Crear una matriz Acceder a los elementos de una matriz Añadir elementos a una matriz Borrar elementos de una matriz Tutorial: Escribir en una página Web usando matrices Una rápida lección sobre objetos Comentarios Cuándo usar comentarios Comentarios del libro 3. Añadir lógica y control a los programas Hacer que los programas reaccionen de forma inteligente Fundamentos de las instrucciones condicionales Añadir un plan de respaldo Probar más de una condición Condiciones más complejas Anidar instrucciones condicionales Consejos para crear instrucciones condicionales Tutorial: Usar instrucciones condicionales Realizar tareas repetitivas con bucles Bucles while Bucles y matrices Bucles for Bucles do/while Funciones: convertir código útil en comandos reutilizables Mini tutorial Dar información a sus funciones Recuperar información de las funciones Evitar choques de variables Tutorial: Un sencillo examen Parte II. Primeros pasos con jQuery 4. Presentación de jQuery Las bibliotecas de JavaScript Comenzar con jQuery Añadir jQuery a una página Modificar páginas Web: una visión general Entender el Modelo de objetos de documento Seleccionar elementos de la página: la técnica de jQuery Selectores básicos Selectores avanzados Filtros de jQuery Comprender las selecciones jQuery Añadir contenido a una página Sustituir y eliminar selecciones Establecer y leer atributos de etiqueta Clases Leer y cambiar propiedades CSS Cambiar varias propiedades CSS de una vez Leer, establecer y eliminar atributos HTML Actuar sobre cada elemento de una selección Funciones anónimas this y $(this) Citas automáticas Visión general Programación 5. Acción/Reacción: Hacer que las páginas cobren vida con eventos Concepto de eventos Eventos de ratón Eventos de documento/ventana Eventos de formulario Eventos de teclado Utilizar eventos con jQuery Tutorial: Eventos Otros conceptos sobre eventos en jQuery Esperar a que se cargue el código HTML Eventos de jQuery El objeto evento Detener el comportamiento normal de un evento Eliminar eventos Gestión avanzada de eventos Otras formas de usar la función bind() Tutorial: Una página de preguntas frecuentes Presentación de la tarea Programación 6. Animaciones y efectos Efectos de jQuery Mostrar y ocultar Hacer aparecer y desaparecer elementos Deslizar elementos Tutorial: Un regulador de inicio de sesión Programación Animaciones Easing Realizar una acción después de completar un efecto Tutorial: Un panel de control animado Programación Parte III. Funciones de páginas Web 7. Mejorar las imágenes Intercambiar imágenes Cambiar el atributo src de una imagen Carga previa de imágenes Imágenes de rollover Tutorial: Añadir imágenes de rollover Visión general de la tarea Programación Tutorial: Galería de imágenes con efectos Visión general de la tarea Programación Una galería avanzada con FancyBox de jQuery Conceptos básicos Crear una galería de imágenes Personalizar FancyBox Tutorial: Galería de imágenes FancyBox 8. Mejorar la navegación Fundamentos de los vínculos Seleccionar vínculos con JavaScript Determinar el destino de un vínculo No siga ese vínculo Abrir vínculos externos en una ventana nueva Crear ventanas nuevas Propiedades de la ventana Abrir páginas en una ventana de la página Tutorial: Abrir una página dentro de otra Una barra de navegación animada básica El código HTML El código CSS Código de JavaScript Tutorial 9. Mejorar formularios Web Comprender los formularios Seleccionar elementos de formulario Obtener y establecer el valor de un elemento de formulario Determinar si botones y casillas están seleccionados Eventos de formulario Añadir mejoras a los formularios Enfocar el primer campo de un formulario Habilitar y deshabilitar campos Ocultar y mostrar opciones de formulario Tutorial: Mejoras de formulario básico Enfoque en un campo Deshabilitar campos de formulario Ocultar campos de formulario Validar formularios Complemento de validación jQuery Validación básica Validación avanzada Estilo de los mensajes de error Tutorial de validación Validación básica Validación avanzada Validación de casillas de verificación y botones de opción Aplicar formato a mensajes de error 10. Ampliar la interfaz Organizar la información en paneles con fichas El código HTML El código CSS El código JavaScript Tutorial de paneles con fichas Añadir un deslizador de contenido a su sitio Utilizar AnythingSlider Tutorial de AnythingSlider Personalizar el aspecto del deslizador Personalizar el comportamiento del deslizador Determinar el tamaño y la posición de los elementos de la página Determinar la altura y la anchura de los elementos Determinar la posición de los elementos en una página Determinar la posición de desplazamiento de una página Añadir información en pantalla El código HTML El código CSS El código JavaScript Tutorial: Información en pantalla Parte IV. Ajax: Comunicarse con el servidor Web 11. Presentación de Ajax Qué es Ajax Fundamentos de Ajax Las piezas del rompecabezas Comunicarse con el servidor Web Ajax al estilo jQuery Usar la función load() Tutorial: La función load() Las funciones get() y post() Aplicar formato a los datos para enviarlos al servidor La función serialize() de jQuery Procesar datos del servidor Procesar errores Tutorial: Utilizar la función get() Presentación JSON Acceder a datos JSON Objetos JSON complejos 12. Flickr y Google Maps Presentación de JSONP Añadir Flickr Feed a su sitio Crear la URL Utilizar la función $.getJSON() El feed JSON de Flickr Tutorial: Añadir imágenes de Flickr a su sitio Añadir Google Maps a un sitio Establecer una ubicación enel mapa Otras opciones de GoMap Añadir marcadores Añadir ventanas de información a marcadores Tutorial de GoMap Parte V. Trucos, consejos y resolución de problemas 13. Maximizar el uso de jQuery Consejos e información sobre jQuery $() es lo mismo que jQuery() Guardar selecciones en variables Añadir contenido de forma esporádica Optimizar sus selectores Utilizar jQuery Docs Leer una página del sitio jQuery Docs Recorrer el DOM Más funciones para manipular HTML Técnicas avanzadas de procesamiento de eventos 14. Ir más lejos con JavaScript Trabajar con cadenas Determinar la longitud de una cadena Cambiar las mayúsculas y minúsculas de una cadena Buscar en una cadena: indexOf() Extraer parte de una cadena con slice() Buscar patrones en cadenas Crear y usar una expresión regular básica Generar una expresión regular Agrupar partes de un patrón Expresiones regulares útiles Comparar un patrón Sustituir texto Probar expresiones regulares Trabajar con números Convertir una cadena en un número Probar números Redondear números Formato de valores de moneda Crear un número aleatorio Fechas y horas Obtener meses Obtener el día de la semana Obtener la hora Crear una fecha diferente a la actual Combinar las piezas Usar archivos externos de JavaScript Escribir código de JavaScript más eficaz Incluir preferencias en variables El operador ternario La instrucción switch Crear código de JavaScript de carga rápida 15. Resolución de problemas y depuración Errores más comunes de la programación en JavaScript Pares no cerrados Comillas Usar palabras reservadas Símbolos de igualdad simples en instrucciones condicionales Mayúsculas y minúsculas Ruta incorrecta a un archivo externo de JavaScript Rutas incorrectas en archivos externos de JavaScript Variables y funciones que desaparecen Depurar con Firebug Instalar y activar Firebug Ver errores con Firebug Usar console.log() para controlar el progreso de las secuencias de comandos Tutorial: Usar la consola de Firebug Técnicas avanzadas de depuración Tutorial de depuración Parte VI. Apéndice Apéndice A. Recursos de JavaScript Referencias Sitios Web Aspectos básicos de JavaScript Artículos y presentaciones Sitios Web jQuery Artículos y presentaciones Sitios Web Ajax Sitios Web JavaScript avanzado Artículos y presentaciones Sitios Web CSS Sitios Web Índice alfabético