2. Temas
• 1. Introducción al lenguaje
• ¿Qué es JavaScript?
• ¿Dónde se utiliza?
• Diferencias entre Java y
JavaScript
• Introducción a algunas funciones
de JavaScript
• 2. Estructuras de control
Variables
• Operadores
• Control de flujo
• Ciclos
• 3. Funciones
• ¿Qué es una función y cómo se
usa?
• Funciones predefinidas por el
lenguaje
• Manejo de errores
3. TEMAS
• 4. HTML DOM
• ¿Qué es DOM y cómo es su estructura?
• Funciones más comunes del DOM
• Métodos y propiedades DOM HTML
• 5. Objetos propios del navegador
• Window
• Document
• Location
• History
• Otros objetos
• 6. Eventos
• ¿Qué es un evento?
• Descripción de eventos
• Aplicación de eventos
• 7. Formularios
• Propiedades básicas de los formularios
• Objetos DOM para formularios
• Expresiones regulares
• Validación de campos
4. OBJETIVOS
• Objetivo general
• Manejar las características básicas del lenguaje JavaScript para el diseño de
páginasWeb con contenido dinámico.
• Objetivos específicos
• Aprender a ejecutar scripts en JavaScript con una sintaxis correcta, además
de conocer los elementos básicos del lenguaje.
• Aprender sobre el manejo de funciones y objetos tanto los propios del
lenguaje como los definidos por el usuario.
• Aprender sobre el manejo de eventos en JavaScript para su aplicación en los
formularios HTML.
6. ¿Qué es JavaScript?
• JavaScript no es un lenguaje de programación propiamente dicho
como C o C++, es un lenguaje script u orientado a documento, como
se nombra también a los lenguajes de macros que tienen muchos
procesadores de texto y plantillas de cálculo.
• El código de JavaScript se puede incluir en cualquier documento
HTML, o todo aquel que se pueda traducir en HTML en el navegador
del cliente, ya sea PHP, ASP, SVG, entre otros.
•
El código va dentro de las etiquetas HTML
• <script type="text/javascript"> y </script>.
8. Diferencia de Java con JavaScript
• JavaScript no es un lenguaje compilado. JavaScript se integra directamente en las
páginas HTML y es interpretado (sin estar compilado) por el cliente (navegador). Es
decir, el programa fuente (página web) se ejecuta directamente.
• JavaScript está basado en objetos, mientras que Java es un lenguaje de
programación orientado a objetos (OOP). JavaScript no utiliza clases, herencias o
técnicas habituales en la OOP.
• No existe la declaración de tipos de variables a utilizar. JavaScript se encarga de ello
automáticamente.
• Las referencias a los objetos se comprueban en tiempo real durante la ejecución. En
los lenguajes compilados como Java esa comprobación se efectúa al compilarse.
• JavaScript no puede (no sabe) escribir en el disco duro (excepto cookies). Por ello
puede considerarse como un lenguaje seguro en Internet, en el sentido que desde
las páginas web, con JavaScript, no se pueden “gastar bromas”.
11. Variables
• var x = 5;
var y = 6;
var z = x + y;
• var pi = 3.14;
var person = "John Doe";
var answer = 'Yes I am!';
https://www.w3schools.com/js/tryit.asp?filename=tryjs_variables_create
13. Estructuras de control de flujo
ESTRUCTURA IF ESTRUCTURA IF...ELSE
Ejemplo:
var mostrarMensaje = true;
If ( mostrarMensaje ) {
alert("Hola Mundo");
}
Ejemplo:
if(condicion) {
...
}
else {
...
}
14. Estructuras de control de flujo
ESTRUCTURA FOR
• for (inicialización; condición;
actualización){
• …
• }
ESTRUCTURA FOR...IN
• for (índice in array){
• …
• }
16. FUNCIONES
• Una función es un conjunto de instrucciones que se agrupan para
realizar una tarea concreta y que se pueden reutilizar fácilmente.
• function suma_y_muestra() {
• resultado = numero1 + numero2;
• alert("El resultado es " + resultado);
• }
19. HTML DOM
• La creación del Document Object Model o DOM es una de las innovaciones
que más ha influido en el desarrollo de las páginas web dinámicas y de las
aplicaciones web más complejas.
• DOM permite a los programadores web acceder y manipular las páginas
XHTML como si fueran documentos XML. De hecho, DOM se diseñó
originalmente para manipular de forma sencilla los documentos XML.
• A pesar de sus orígenes, DOM se ha convertido en una utilidad disponible
para la mayoría de lenguajes de programación (Java, PHP, JavaScript) y
cuyas únicas diferencias se encuentran en la forma de implementarlo.
20. HTML DOM
La especificación completa de DOM define 12 tipos de nodos, aunque las páginas XHTML
habituales se pueden manipular manejando solamente cuatro o cinco tipos de nodos:
• Document, nodo raíz del que derivan todos los demás nodos del árbol.
• Element, representa cada una de las etiquetas XHTML. Se trata del único nodo que puede
contener atributos y el único del que pueden derivar otros nodos.
• Attr, se define un nodo de este tipo para representar cada uno de los atributos de las
etiquetas XHTML, es decir, uno por cada par atributo=valor.
• Text, nodo que contiene el texto encerrado por una etiqueta XHTML.
• Comment, representa los comentarios incluidos en la página XHTML.
Los otros tipos de nodos existentes que no se van a considerar son DocumentType,
CDataSection, DocumentFragment, Entity, EntityReference, ProcessingInstruction y
Notation.
21. Funciones mas comunes del DOM
ACCEDER A LOS ELEMENTOS DEL DOM
getElementsByTagName():
La función getElementsByTagName(nombreEtiqueta) obtiene
todos los elementos de la página XHTML cuya etiqueta sea igual
que el parámetro que se le pasa a la función.
getElementsByName():
La función getElementsByName() es similar a la anterior, pero
en este caso se buscan los elementos cuyo atributo name sea
igual al parámetro proporcionado. En el siguiente ejemplo, se
obtiene directamente el único párrafo con el nombre indicado.
22. HTML DOM
ACCEDER A LOS ELEMENTOS DEL DOM
getElementById():
La función getElementById() es la más utilizada cuando se
desarrollan aplicaciones web dinámicas. Se trata de la función
preferida para acceder directamente a un nodo y poder leer o
modificar sus propiedades.
La función getElementById() devuelve el elemento XHTML cuyo
atributo id coincide con el parámetro indicado en la función.
Como el atributo id debe ser único para cada elemento de una
misma página, la función devuelve únicamente el nodo deseado.
24. Jerarquía
• Cuando nuestro navegador abre una
página web, su motor JavaScript la
analiza, y crea una estructura de
objetos, ordenados jerárquicamente
de la siguiente forma:
25. Ejercicios
EJERCICIO 1
• A partir de la página web proporcionada
y utilizando las funciones DOM, mostrar
por pantalla la siguiente información:
1. Número de enlaces de la página
2. Dirección a la que enlaza el penúltimo
enlace
3. Numero de enlaces que enlazan a
http://prueba
4. Número de enlaces del tercer párrafo
EJERCICIO 2
• Completar el código JavaScript
proporcionado para que cuando se pinche
sobre el enlace se muestre completo el
contenido de texto. Además, el enlace
debe dejar de mostrarse después de
pulsarlo por primera vez. La acción de
pinchar sobre un enlace forma parte de los
"Eventos" de JavaScript que se ven en el
siguiente capítulo. En este ejercicio, sólo
se debe saber que al pinchar sobre el
enlace, se ejecuta la función llamada
muestra().
27. Eventos
• os eventos hacen posible que los usuarios transmitan información a
los programas. JavaScript define numerosos eventos que permiten
una interacción completa entre el usuario y las páginas/aplicaciones
web. La pulsación de una tecla constituye un evento, así como
pinchar o mover el ratón, seleccionar un elemento de un formulario,
redimensionar la ventana del navegador, etc.
28. Eventos
Evento Descripción Elementos para los que esta
definido
onchange Deseleccionar un elemento que se ha
modificado
<input>, <select>, <textarea>
onclick Pinchar y soltar el ratón Todos los elementos
onload La página se ha cargado completamente <body>
onselect Seleccionar un texto <input>, <textarea>
onsubmit Enviar el formulario <form>
onmouseover
El ratón "entra" en el elemento (pasa por
encima del elemento)
Todos los elementos
onmousemove Mover el ratón Todos los elementos
onkeypress Pulsar una tecla Elementos de formulario y <body>
onfocus Seleccionar un elemento
<button>, <input>, <label>,
<select>, <textarea>, <body>
30. Formularios
• La programación de aplicaciones que contienen formularios web
siempre ha sido una de las tareas fundamentales de JavaScript. De
hecho, una de las principales razones por las que se inventó el
lenguaje de programación JavaScript fue la necesidad de validar los
datos de los formularios directamente en el navegador del usuario.
De esta forma, se evitaba recargar la página cuando el usuario
cometía errores al rellenar los formularios.
31. Formularios
• No obstante, la aparición de las aplicaciones AJAX ha relevado al
tratamiento de formularios como la principal actividad de JavaScript.
Ahora, el principal uso de JavaScript es el de las comunicaciones
asíncronas con los servidores y el de la manipulación dinámica de las
aplicaciones. De todas formas, el manejo de los formularios sigue
siendo un requerimiento imprescindible para cualquier programador
de JavaScript.