Manuales
HTML básico
HTML 2ª. y CSS
Propiedades CSS
Javascript
Applets Java
CGIs

 
dHTML
Introducción
Cambiar formato
Mover capas
Mover con teclado
Visibilidad
Mover con el ratón
 
JavaScript
Barra de estado
Botones y menús
Validar formular.
Passwords
Abrir ventanas
Cargar frames
Volver atrás
Alertas
Ver navegador
Cargar imágenes
 
Creación de páginas web
© Paco Cascón Soriano
(diseño del índice tomado de la espléndida página jsworld.com)

JavaScript

En este apartado, el de JavaScript, no encontraréis ningún manual, sino sólo algunos conceptos básicos y referencias del lenguaje. Lo que sí he puesto es una gran cantidad de ejemplos de pequeños programas y trucos hechos con JavaScript. Están todos en el índice bajo el título de Scripts.

Además de ver los scripts y conceptos generales que encontraréis a continuación, hay una forma fácil de incluir scripts en nuestras páginas. Si estamos viendo una página que tiene algún efecto especial que nos guste, simplemente hemos de visualizar el código fuente de la misma (en Netscape opcion Ver - Origen del Documento o CTRL+U), marcar con el ratón todo el bloque contenido entre las directivas <SCRIPT> </SCRIPT>, copiarlas al portapapeles con CTRL+C y posteriormente incluir este bloque en nuestra página haciendo las modificaciones necesarias.

===========================


Conceptos generales

JavaScript es Case Sensitive, es decir, diferencia entre mayúsculas y minúsculas, por lo cual habrá que tener mucha precaución a la hora de escribir las expresiones. Se pueden escribir comentarios: cuando son de una linea bastará precederlos de "//", cuando son de más de una línea se escribirán entre "/*" y "*/". Tras cada orden de JavaScript va un ";", cuando son varías órdenes se pueden agrupar, escribiéndolas entre "{" y "}".

El objetivo de estas páginas no es hacer un manual de Javascript, sino mostrar su uso en ejemplos concretos, a través de los diferentes scripts que podréis encontrar en dicho apartado del índice. No obstante, a continuación y a modo de referencia vamos a presentar:


Expresiones JavaScript

Se componen de operadores, variables y constantes.

Operadores

Los más comunes son:

OperadorExplicación
+adición ( o concatenación en el caso de cadenas)
-substracción
*multiplicación
/división
=igual (sólo para asignar un valor a una variable)
++incremento
- -decremento
>mayor que
<menor que
>=mayor o igual que
<=menor o igual que
= =igual a (compara dos valores)
!=distinto de (compara dos valores)
&&y (une dos comparaciones)
||o (una u otra comparación)

Constantes

Se trata de bloques de datos (cadenas, números) que JavaScript interpreta literalmente. Las cadenas numéricas se escriben tal cual, mientras que las de cadenas se escriben entre comillas dobles o sencillas. Por ejemplo:
x = 25     a = "Hola, qué tal"

Variables

Se trata de una palabra sin comillas que se puede utilizar para almacenar valores. Los nombres asignados a las variables deben comenzar siempre por una letra y no pueden contener espacios en blanco. Se puede utilizar el parámetro var antes del nombre de la variable para indicar que se está creando una nueva variable. Por ejemplo: var a indicaría que se ha creado la variable a. No obstante en JavaScript no es preciso crear la variable, sino que al asignarle un valor se creará automáticamente. En el ejemplo usado en el apartado anterior de constantes hemos creados 2 variables, cuyos nombre son "x" y "a" y cuyos valores son 25 y la expresión "Hola qué tal", respectivamente.


Objetos JavaScript

Javascript es un lenguaje orientado a objetos, es decir, podrá manejar diferentes objetos, tales como: la pantalla, la ventana, el documento, las etiquetas, los formularios.

Cada uno de estos objetos tienen una serie de características, a las que llamaremos propiedades. Además cada objeto podrá realizar toda una serie de cosas, a las que llamaremos métodos. Para hacer referencia a una propiedad se utiliza la sintáxis: nombredeobjeto.propiedad y para hacer referencia un método se utiliza la misma sintáxis aunque suele acabar con una apertura y cierre de paréntesis: nombredeobjeto.metodo().

A continuación hay una relación muy somera de los objetos que puede manejar JavaScript. Su uso específico se verá en los diferentes scripts de estos manuales.

  • Objeto documento (document):
    Hace referencia a la página que se esté visualizando en ese momento. Algunas de sus propiedades son:
    bgColor (color del fondo), fgColor (color del texto), linkColor, alinkColor y vlinkColor (color de los vínculos), location (la URL del documento), lastModified (última modificación), title (título de la página), links (enlaces del documento).
    Algunos de sus métodos son:
    clear, close (cerrar), open (abrir), write (escribir)
    Ejemplos:
    document.write ("Hola, buenas tardes"). Escribirá la cadena Hola, buenas tardes.
    document.links.length. Mostrará el número de enlaces que tiene este documento.
    document.links[1].href. Mostrará la URL del segundo enlace (la numeración comienza por 0).
    document.lastModified. Escribirá la fecha y hora en que este documento se modificó por última vez.

  • Objeto cadena (string):
    Hace referencia a la página que se esté visualizando en ese momento. Algunas de sus propiedades son:
    length (longitud de la cadena).
    Algunos de sus métodos son:
    Para formatear: bold, blink, big, small, fontcolor, fontsize, italics, strike, sub, sup, toLowerCase, toUpperCase. Otros: indexOf (contenido en la cadena), charAt(x) (representa el caracter número x de la cadena)
    Ejemplos:
    nombre = "Juan Pérez". Crea la variable nombre y le asigna la cadena "Juan Pérez".
    document.write (nombre.toUpperCase). Escribirá JUAN PÉREZ.
    document.write (nombre.charAt(2)). Escribirá "a", es decir, la tercera letra de la cadena.

  • Objeto fecha (date):
    Hace referencia a la página que se esté visualizando en ese momento. No tiene propiedades y algunos de sus métodos son:
    getDate (sólo la fecha), getDay (el día), getMonth, getHours, getMinutes, getSeconds
    Ejemplos:
    fecha = new date(). Crea una variable llamada fecha, en la que se almacena la fecha y hora actual

  • Objeto pantalla (screen):
    Contiene la información sobre la pantalla que usa el navegador. Algunas de sus propiedades son:
    colorDepth (número de bits de colores en uso), height (altura de la pantalla en pixels), pixelDepth (número de bits por pixel), width (anchura de la pantalla en pixels).
    Ejemplos:
    document.write ("Estás viendo la página con una resolución de "+width+"*"+height+" pixels". Escribirá la resolución.
    if (width<700 && height<500) alert ("Estas páginas están optimizadas para una resolución de 800*600 pixels y tu tienes una configuración inferior. \n Por favor, cambia tu configuración"). En el caso de que la resolución de la pantalla sea inferior a 700*500 saldrá una ventana de alerta con el mensaje que hayamos escrito.
    if (width<700 && height<500) location.href="paginapeque.htm" else location.href="paginagrande.htm". Mostrará una página u otra según que la resolución sea inferior o mayodr de 700*500.

  • Otros objetos:
    ancla (anchor): contiene una lista de todas las señales (A NAME) de ese documento.

    Objetos para formularios: botón (button), casilla de verificación (checkbox), borrar (reset), enviar (submit), seleccionar (select), password.

    formularios (forms): contiene una lista de todos los formularios de ese documento.

    ventana (window): es el de más alto nivel y tiene numerosas propiedades y métodos para trabajar con él. Algunos de sus métodos son: open('nombre_página','nombre_ventana','propiedades:width, height, top, left, ...'), close (para cerrar la ventana), print (para imprimir la ventana), ... Entre sus propiedades tenemos: defaultStatus (para configurar el mensaje por defecto de la barra de estado), status (mensajes en la barre de estado), ...

    localización (location): contiene información sobre la URL de la página en uso en ese momento.

    historia (history): contiene una lista de todos los elementos del historial del navegador. A través de los métodos Back, Forward y Go podremos desplazarnos por ellos.

    navegador (navigator): contiene información sobre el navegador que usamos para ver la página, a través de propiedades como: appName, appVersion, ...

    matematicas (math): se trata de un objeto predifinido de JavaScript con numerosas propiedades y métodos para manejar datos y funciones numéricas.

    marco (frame): contiene una lista de todos los marcos que se muestran en ese momento en la pantalla. Permite desplazarse por ellos, abrir nuevos, ...

    matrices (array):


Parámetros JavaScript

Permiten construir bucles dentro de un script para que ciertos comandos se ejecuten varias veces, condicionales para decirle en qué condiciones queremos que se ejecute. A continuación algunos de ellos:

ParámetroDescripciónEjemplo
 
Condicionales
if (condición) {código} Ejecuta el código sólo si la condición es verdadera if (navigator.appName == "Netscape") {
document.write ("Bienvenido/a. Usas Netscape")
}
if (condición) {código1} else {condicion2} Ejecuta el código1 si la condición es verdadera, y en caso contrario, el codigo2. if (navigator.appName == "Netscape") {
document.write ("Bienvenido/a. Usas Netscape")
else
document.write ("Bienvenido/a. Usas Explorer")
}
(condición) ? valor1:valor2 Si la condición es verdadera, devuelve el valor1, si es falsa devuelve el valor2. ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
Bucles
for(inicio, mientras, incremento) {código} Establece un bucle con un contador que comenzará con el valor definido en inicio y que se irá incrementando con el valor definido en incremento. El código se ejecutará si la condición definida en mientras se cumple. for(x=1;x<6;x++){
document.write("Hola "+x)}

Probar
while(condición) {código} Repite el código mientras que la condición sea verdadera. respuesta="";
while(respuesta != "Gracias"){
respuesta = prompt ("Bienvenido/a. Se educado/a","")
} alert ("Muy bien");

Probar
break Finaliza el bucle y ejecuta el primer parámetro posterior al bucle.  
continue Vuelve a ejecutar el principio del bucle.  
Manipulación de objetos
this Hace referencia al objeto activo o al mencionado en el método.  
with (objeto) {código} Especifica cuál es el objeto a utilizar cuando se ejecute el código.  
Varios
function nombre(argumentos) {código} Crea una función personalizada con el nombre que se haya especificado. Se pueden (es opcional) usar argumentos listándolos separados por comas. Al llamar a la función se ejecutará el código establecido. function escribir(){
document.write("hola");
document.write("¿Cómo estás?")}
return valor Finaliza una función personalizadad y devuelve un valor al código que invoca la función.  
var nombre Crea una nueva variable con el nombre que se especifique. En JavaScript no es imprescindible crear una variable de esete modo para poderla usar. var Apellidos
Apellidos=Cascón


Eventos en JavaScript

Es la forma de decirle a JavaScript cuándo tiene que llevar a cabo una acción:

EventoDescripción
 
onClick Se ejecuta cuando se pulsa con el botón izquierdo del ratón.
onChange Se ejecuta cuando se modifica el contenido de un input en un formulario.
onFocus Se ejecuta cuando se situa el cursor de inserción dentro de un elemento de un formulario.
onBlur Se ejecuta cuando se situa el cursor de inserción fuera de un elemento de un formulario.
onMouseOver Se ejecuta cuando se pone el puntero del ratón sobre él (sin apretar).
onMouseOut Se ejecuta cuando el puntero del ratón nos lo llevamos de un zona sensible (por ejemplo, un enlace).
onSelect Se ejecuta cuando se selecciona un elemento de una lista en un formulario.
onSubmit Se ejecuta cuando se hace clic sobre el botón de enviar en un formulario.
onLoad Se ejecuta cuando se abre por primera vez una página.
onUnLoad Se ejecuta cuando se sale de la página activa.
HREF:javascript Se ejecuta cuando se hace clic sobre un enlace, pudiendo poner una referencia a una función o expresión de javascript .


Funciones integradas

FunciónDescripción
 
eval (cadena) Ejecuta el resultado de la cadena como si fuera una expresión.
isNan (valor) Si no es un número da verdadero; si es un numero da falso.
escape (cadena) Visualiza la cadena sin las etiquetas de HTML.
parseFloat (cadena) Convierte una cadena en un número real de coma flotante.
parseInt (cadena[,base]) Convierte una cadena en un número entero. Se puede poner, como segundo argumento, un valor que indica en qué sistema numérico se quiere (decimal=10, hexadecimal=8,...). Por defecto, será en base 10.