javascript - personalizado - jquery confirm example
Javascript cerrar cuadro de alerta (10)
Quiero poder cerrar un cuadro de alerta automáticamente usando javascript después de una cierta cantidad de tiempo o en un evento específico (es decir, al presionar tecla). De mi investigación, no parece que eso sea posible con la función de alerta integrada (). ¿Hay alguna manera de anularlo y tener control sobre el cuadro de diálogo que se abre?
Además, no quiero una anulación que muestre un div oculto como alerta. Necesito un cuadro de diálogo real.
Quiero poder cerrar un cuadro de alerta automáticamente usando javascript después de una cierta cantidad de tiempo o en un evento específico (es decir, al presionar tecla)
Una nota al margen: si tiene una alerta ("datos"), no podrá mantener el código ejecutándose en segundo plano (AFAIK) .... el cuadro de diálogo es una ventana modal, por lo que no puede perder el enfoque también. Por lo tanto, no tendrá pulsada la tecla ni ningún temporizador ...
Como se mencionó anteriormente, realmente no puedes hacer esto. Puede hacer un diálogo modal dentro de la ventana usando un marco de interfaz de usuario, o puede tener una ventana emergente, con un script que se cierra automáticamente después de un tiempo de espera ... cada uno tiene un aspecto negativo. La ventana modal dentro del navegador no creará ninguna notificación si la ventana está minimizada, y una ventana emergente programática (basada en el temporizador) es probable que sea bloqueada por navegadores modernos y bloqueadores de ventanas emergentes.
La única alternativa real aquí es usar algún tipo de widget personalizado con una opción modal. Eche un vistazo a jQuery UI para ver un ejemplo de diálogo con estas características. Existen cosas similares en casi todos los frameworks JS que puede mencionar.
Parece que puede lograr algo similar con la API de Notification . No puede controlar por cuánto tiempo está visible (probablemente una preferencia de sistema operativo, a menos que especifique requireInteraction true) y requiere que el usuario haga clic en "permitir notificaciones" (desafortunadamente), pero aquí está:
Si desea que se cierre después de 1s:
var notification = new Notification("Hi there!", {body: "some text"});
setTimeout(function() {notification.close()}, 1000);
Si desea mostrarlo más tiempo que el "predeterminado", puede vincularlo a la devolución de llamada directa y mostrar otra notificación de repetición, supongo, para reemplazarlo.
Ref .: inspirado en this respuesta, aunque esa respuesta ya no funciona en Chrome moderno, pero sí lo hace la API de notificaciones.
Prueba el plugin boot box.
var alert = bootbox.alert(''Massage'')
alert.show();
setTimeout(function(){alert.modal(''hide''); }, 4000);
Puede usar la etiqueta y establecer su tiempo de entrada y salida de fundido para, por ejemplo, Ocultarlo inicialmente y mostrar al hacer clic. $ (''# div_Message''). fadeIn (500) .delay (1000) .fadeOut (1500);
Supongo que podría abrir una ventana emergente y llamar a eso un cuadro de diálogo. No estoy seguro de los detalles, pero estoy bastante seguro de que puede cerrar una ventana programáticamente que abrió desde JavaScript. ¿Esto sería suficiente?
no tiene control sobre el cuadro de diálogo, si tiene control sobre el cuadro de diálogo, puede escribir código JavaScript obtrusivo. (No es una buena idea usar alertas para nada excepto depuración)
window.setTimeout(''alert("Message goes here");window.close();'', 5000);