no ejecuta el confirm tras setinterval
Publicado por volar5 (3 intervenciones) el 15/07/2025 11:19:11
Hola:
Tengo
let tiempoRestante = 1200; // segundos
let tiempoAviso = 60; // segundos antes de finalizar la sesión
let sesionExpirada = false;
function mostrarAviso() {
if (tiempoRestante <= tiempoAviso && !sesionExpirada) {
const confirmacion = "Tu sesión está a punto de expirar. ¿Deseas continuar? Tiempo restante: " + tiempoRestante+ " segundos.";
if (confirm(confirmacion)) {
alert('confirmado')
// Usuario ha confirmado, reinicia el contador y resetea la bandera
tiempoRestante = 1200;
sesionExpirada = false;
} else {
// Usuario ha cancelado, redirige a la página de inicio de sesión o cierra sesión
sesionExpirada = true;
// window.location.href = "/logout"; // Reemplaza con tu lógica de cierre de sesión
}
}
}
function reducirTiempo() {
if (!sesionExpirada) {
tiempoRestante--;
if (tiempoRestante > 0) {
mostrarAviso();
}
}
}
// Inicia el temporizador para reducir el tiempo y mostrar el aviso
setInterval(reducirTiempo, 1000); // Cada segundo
No ejecuta el confirm nunca. Se trata de avisar de fin de sesión, 1200 segundos.
Muchas gracias por cualquier ayuda.
Tengo
let tiempoRestante = 1200; // segundos
let tiempoAviso = 60; // segundos antes de finalizar la sesión
let sesionExpirada = false;
function mostrarAviso() {
if (tiempoRestante <= tiempoAviso && !sesionExpirada) {
const confirmacion = "Tu sesión está a punto de expirar. ¿Deseas continuar? Tiempo restante: " + tiempoRestante+ " segundos.";
if (confirm(confirmacion)) {
alert('confirmado')
// Usuario ha confirmado, reinicia el contador y resetea la bandera
tiempoRestante = 1200;
sesionExpirada = false;
} else {
// Usuario ha cancelado, redirige a la página de inicio de sesión o cierra sesión
sesionExpirada = true;
// window.location.href = "/logout"; // Reemplaza con tu lógica de cierre de sesión
}
}
}
function reducirTiempo() {
if (!sesionExpirada) {
tiempoRestante--;
if (tiempoRestante > 0) {
mostrarAviso();
}
}
}
// Inicia el temporizador para reducir el tiempo y mostrar el aviso
setInterval(reducirTiempo, 1000); // Cada segundo
No ejecuta el confirm nunca. Se trata de avisar de fin de sesión, 1200 segundos.
Muchas gracias por cualquier ayuda.
Valora esta pregunta


0
