Criptonomicón

Suscripción gratis

Susurros

Ariadn@

¿Intimidad?

Artículos

Seguridad

Acceso a BD

Autenticación

Comercio-e

Linux

Navegación segura

Control de acceso

CGI

Java

JavaScript

Cookies

Crashes

Agujeros

Spam

Remailers

Anonimato

Correo seguro

Web seguro

Consejos prácticos

Referencias

Libro de Visitas

Curso de JavaScript

Escribir en la ventana actual

Añadir JavaScript a una página 

Abrir y cerrar ventanas 

Escribir en la ventana actual 

Validar formularios 

Cambiar imágenes dinámicamente 

Cálculos matemáticos 

Cookies 

La barra de estado 

Menú de navegación 

Ahora que se ha visto cómo abrir y cerrar ventanas, se procederá a explicar cómo escribir texto de manera dinámica dentro de una página web.

Como ya se dijo, JavaScript es un lenguaje basado en objetos, siendo el objeto window, visto ya en la sección anterior, el que se encuentra a la raíz de todos ellos. Por debajo de él se encuentran todos los demás, como el objeto document, que contiene información sobre el documento actual y proporciona los métodos o funciones que permiten mostrar una salida al usuario. En concreto, el método write escribe una o más expresiones HTML en un documento en la ventana especificada.

Por ejemplo, para escribir el mensaje "¡Hola, mundo!" dentro de la página web bastaría con utilizar la siguiente línea de código:

document.write( "¡Hola, mundo!" );

en el lugar en el que se quisiera que apareciera el mensaje (por supuesto, encerrada entre las etiquetas <SRIPT>, como ya se explicó).

Evidentemente, escribir directamente el texto de esta forma no presenta ninguna ventaja respecto a utilizar una línea convencional en HTML. La verdadera utilidad radica en poder utilizar variables y funciones de manera que el texto cambie dinámicamente. A continuación se verán dos ejemplos: cómo incluir información sobre el navegador del usuario y cómo incluir la fecha.

Cómo escribir datos del usuario

El objeto navigator posee propiedades o variables para almacenar el nombre y versión del navegador usado, los tipos MIME soportados por el cliente y los plug-in instalados en el cliente. La propiedad appName contiene el nombre del navegador, mientras que la propiedad appVersion almacena información sobre su versión. Usando estas propiedades se le puede mandar al usuario un mensaje indicándole el navegador que usa y su versión:

document.write( "Utilizas el navegador " + navigator.appName + ", versión " + navigator.appVersion + "." );

La utilidad de estas funciones radica sobre todo en la posibilidad de mostrar la página de una manera u otra en función del tipo y versión del navegador del usuario.

Cómo escribir la fecha actual

Es muy común encontrarse la fecha del día en páginas web de periódicos y otros servicios de información. En lugar de tener que escribirla y cambiarla manualmente cada día a las 00.00, resulta mucho más cómodo y eficiente escribir un sencillo guión que se encargue automáticamente de la tarea.

Para gestionar fechas y horas se utiliza el objeto Date. Cuando no se le proporcionan argumentos a su constructor, éste devuelve la fecha y hora en el momento en que se le invocó:

ahora = new Date();

almacenándose la fecha y hora actuales en ahora. Se puede acceder a los distintos componentes de la fecha y hora por medio de métodos como los siguientes:

  • getDate: devuelve el día del mes (valor entero entre 1 y 31) para la fecha especificada.
  • getDay: devuelve el día de la semana (0 para Domingo, 1 para Lunes, etc.) para la fecha especificada.
  • getHours: devuelve la hora (valor entero entre 0 y 23) para la fecha especificada.
  • getMinutes: devuelve los minutos (valor entero entre 0 y 59) para la fecha especificada.
  • getMonth: devuelve el mes (valor entero entre 0 y 11) para la fecha especificada.
  • getSeconds: devuelve los segundos (valor entero entre 0 y 59) para la fecha especificada.
  • getTime: devuelve un valor numérico (número de milisegundos transcurridos desde el 1 de enero de 1970 a las 00.00) correspondiente a la hora para la fecha especificada.
  • getYear: devuelve el año para la fecha especificada.

Utilizando estos métodos, se puede construir una función que devuelva la fecha actual:

function fechahoy() {
  var diasemana = new Array('Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado');
  var nombremes = new Array('enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre');
  var ahora;
  var fecha = new Date();
  var anio = fecha.getYear();
  var mes = fecha.getMonth();
  var dia = fecha.getDay();
  var num = fecha.getDate();
  ahora = diasemana[dia] + ", " + num + " " + nombremes[mes] + " " + anio;
  return ahora;
}

Esta función devuelve una cadena con el día de la semana, seguido del día del mes, el mes y el año. La función se puede invocar en cualquier lugar de la página web y presentar su salida utilizando el método write del objeto document:

document.write( "Hoy es " + fechahoy() );

 

Copyright © 1997-2000 Gonzalo Álvarez Marañón, CSIC. Todos los derechos reservados.

Criptonomicón es un servicio ofrecido libremente desde el Instituto de Física Aplicada del CSIC. Para información sobre privacidad, por favor consulte la declaración de política sobre privacidad. Para sugerencias, comentarios o quejas, acuda al libro de visitas. Para contribuir al Criptonomicón, lea la página de contribuciones.

.