Menubar

martes, 11 de septiembre de 2018

alertify.js, una librería para crear cuadros de diálogo que no son bloqueados por los navegadores web

Por J. Manuel Mar H. Editar
Compartir en Facebook
Compartir en Twitter
Compartir en MeWe
Enviar a Reddit
Guardar en Internet archive
Guardar en  archive.today
Enviar por email
Logo JavaScript - No oficial  Normalmente JavaScript dispone de los métodos "alert" y "prompt" para crear cuadros de diálogo y con ellos poder mostrar un aviso al usuario o permitir que este ingrese cierta información que luego será procesada. Sin embargo en ocasiones estos se encuentran bloqueados (por ejemplo si hacemos uso de WebView en una aplicación Android los cuadros de diálogo alert no se despliegan), para ello vamos a ver como podemos reemplazarlos usando la librería "alertify.js".

Publicidad


  Alertify.js como indicamos hace un momento resuelve este problema al crear sus propios cuadros de diálogo mediante el uso de JavaScript y HTML, no hace uso en ningún momento de los cuadros de diálogo del sistema operativo, por lo que no supone ninguna amenaza para el usuario.

  Lamentablemente alertify.js ya es un proyecto abandonado por su autor - Fabien Doiron (al parecer por falta de tiempo), pero eso no quiere decir que no podamos usar su librería, pues está completa y al momento de la redacción de éste artículo funciona sin problemas en Internet Explorer, Firefox, Chrome y Webview en caso de que queramos hacer uso de ella en alguna aplicación para Android.

  Procederemos a descargarla desde su web oficial http://fabien-d.github.io/alertify.js/ , la última versión disponible es la 0.3.11. Ya con el archivo zip en nuestra PC procedemos a descomprimirlo, dentro de la estructura encontraremos una serie de archivos y carpetas, nos interesará copiar los siguientes archivos hacia nuestro proyecto web:

lib/alertify.js.min.js
themes/alertify.core.css
themes/alertify.default.css

  El primero de ellos es la librería como tal (es la versión compacta, podemos usar la versión ordinaria, pero pesa 20 Kb contra 8 Kb en su versión comprimida) y los dos archivos restantes las hojas de estilo para personalizar nuestros cuadros de diálogo.

Ahora en nuestra página web incluiremos lo siguiente:

<link rel="stylesheet" href="js/alert/alertify.core.css" />
<link rel="stylesheet" href="js/alert/alertify.default.css" />
<script language="JavaScript" src="js/alert/alertify.min.js""></script>

Y para invocar los cuadros de diálogo haremos uso de las siguientes funciones:

<script language="JavaScript">
alertify.alert("Hello world!");
</script>

Lo cual generaría un aviso como el siguiente:
Cuadro de alerta simple


  Por el contrario, si hacemos uso del siguiente código obtendríamos un diálogo para confirmar una acción o no.

<script language="JavaScript">

alertify.confirm("Seleccione OK o Cancelar", function (e) {

  if (e) {
    alertify.alert("Ha elegido OK");
  else
    alertify.alert("Ha elegido Cancelar");

});

</script>

Este es el resultado:
Seleccione una acción
OK
Cancelar


  E igualmente podemos hacer uso de la función prompt que provee la librería de la siguiente manera:

<script language="JavaScript">

alertify.prompt("Escriba algo:", function (e, str) {

  if(e)
    alertify.alert("Usted escribi&oacute: " + str);

}, "");

</script>

Prompt
Texto ingresado


Quedaría un ejemplo completo de la siguiente manera:

<html>
<head>
<link rel="stylesheet" href="js/alert/alertify.core.css" />
<link rel="stylesheet" href="js/alert/alertify.default.css" />
<script language="JavaScript" src="js/alert/alertify.min.js"></script>
</head>
<body>

<script language="JavaScript">

alertify.prompt("Escriba algo:", function (e, str) {

  if(e)
    alertify.alert("Usted escribi&oacute: " + str);

}, "");

</script>

</body>
</html>

Si visitan la página web del desarrollador pueden ver los mismos ejemplos en acción y otros más de los que dispone la librería.

Conclusiones:


  Alertify.js puede proveer los mismo métodos (alert y prompt) que el navegador web con la ventaja de que no pueden ser bloqueados (por el momento) por considerarse poco seguros. La licencia libre MIT de alertify.js permite que pueda ser adaptada a nuestras necesidades, en los próximos artículos mostraré como poder anexarle otros métodos para seleccionar datos.

Procedencia de las imágenes:
 Logo (no oficial) de JavaScript desde Wikipedia 
 https://es.m.wikipedia.org/wiki/Archivo:Unofficial_JavaScript_logo_2.svg

 El resto son capturas de pantallas propias de la librería alertify.js.

¿Te gustó este post?, entonces si lo deseas puedes apoyarnos para continuar con nuestra labor, gracias.



Licencia de Creative Commons Esta obra está bajo una licencia de Creative Commons Reconocimiento 4.0 Internacional, haga clic aquí para conocer más detalles.


Compartir:



Danos tu voto
Comunidad Kynamio
Directorio de blogs, ¡agrega el tuyo!
Programas para el mantenimiento de Windows
Blog de seguridad informatica