preloader

Interacción: alert, prompt, confirm

Dado que utilizaremos el navegador como nuestro entorno de demostración, revisemos algunas funciones para interactuar con el usuario: alert, prompt y confirm.

alert

Ya la hemos utilizado. Muestra un mensaje y espera a que el usuario presione “Aceptar”.

Por ejemplo:

				
					alert("Hola");

				
			

La pequeña ventana con el mensaje se llama ventana modal. La palabra “modal” significa que el visitante no puede interactuar con el resto de la página, ni presionar otros botones, etc., hasta que se haya cerrado la ventana. En este caso, hasta que se presione “OK”.

prompt

La función prompt acepta dos parámetros:

				
					result = prompt(titulo, [valorPorDefecto]);

				
			

Muestra una ventana modal con un mensaje, un campo de entrada para el visitante y los botones “OK” y “Cancelar”.

  • titulo: El texto que se muestra al usuario.
  • valorPorDefecto: Un segundo parámetro opcional, que es el valor inicial del campo de entrada.

Nota: Los corchetes alrededor de valorPorDefecto en la sintaxis indican que el parámetro es opcional.

El usuario puede escribir algo en el campo de entrada y presionar “OK”, obteniendo ese texto en result. O puede cancelar la entrada con el botón “Cancelar” o presionando la tecla Esc, en cuyo caso se obtiene null en result.

La llamada a prompt devuelve el texto del campo de entrada o null si se cancela la entrada.

Por ejemplo:

				
					let edad = prompt('¿Cuántos años tienes?', 100);

alert(`Tienes ${edad} años!`); // Tienes 100 años!

				
			

En IE: Siempre proporciona un valor por defecto.
El segundo parámetro es opcional, pero si no se proporciona, Internet Explorer insertará el texto «undefined» en el prompt.

Ejecuta este código en Internet Explorer para verlo:

				
					let test = prompt("Prueba");

				
			

Por lo tanto, para que las indicaciones se vean bien en IE, es recomendable siempre proporcionar el segundo argumento:

				
					let test = prompt("Prueba", ''); // <-- para IE

				
			

confirm

La sintaxis:

				
					result = confirm(pregunta);

				
			

La función confirm muestra una ventana modal con una pregunta y dos botones: “OK” y “Cancelar”.

El resultado es true si se pulsa “OK” y false en caso contrario.

Por ejemplo:

				
					let esJefe = confirm("¿Eres el jefe?");

alert( esJefe ); // true si se pulsa "OK"

				
			

Resumen

Hemos cubierto 3 funciones específicas del navegador para interactuar con los usuarios:

  • alert: Muestra un mensaje.
  • prompt: Muestra un mensaje solicitando al usuario que introduzca un texto. Retorna el texto o, si se hace clic en “Cancelar” o se presiona Esc, retorna null.
  • confirm: Muestra un mensaje y espera a que el usuario pulse “OK” o “Cancelar”. Retorna true si se presiona “OK” y false si se presiona “Cancelar” o Esc.

Todas estas funciones son modales: detienen la ejecución del script y no permiten que el usuario interactúe con el resto de la página hasta que la ventana se haya cerrado.

Dos limitaciones comunes a todos los métodos anteriores son:

  1. La ubicación exacta de la ventana modal está determinada por el navegador. Normalmente, aparece en el centro.
  2. El aspecto exacto de la ventana también depende del navegador. No se puede modificar.

Este es el precio de la simplicidad. Existen otras formas de mostrar ventanas más atractivas e interactivas para el usuario, pero si la apariencia no es una preocupación importante, estos métodos funcionan adecuadamente.

Related Post

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *