Tengo el siguiente código que encontré aquí https://stackoverflow.com/a/60187153/16383273
function handleBackPress(event) { event.preventDefault(); event.stopPropagation(); $('.modal').modal('hide'); $('.modal-backdrop').remove(); } var closedModalHashStateId = "#modalClosed"; var openModalHashStateId = "#modalOpen"; window.location.hash = closedModalHashStateId; $(window).on('popstate', this.handleBackPress); document.addEventListener("backbutton", this.handleBackPress, false); $('.modal').on('show.bs.modal', function(e) { window.history.pushState('forward', null, './'+openModalHashStateId); }); $('.modal').on('hide.bs.modal', function(e) { window.history.back(); });
Estoy usando este código para cerrar los modales de arranque usando el botón Atrás del teléfono. Sin embargo, encontré un problema aquí. Este código cierra todos los modales abiertos a la vez. Esto es irritante desde el punto de vista del usuario. Lo que quiero hacer aquí es cerrar los modales de arranque uno por uno. Al hacer clic en el primer botón Atrás, debería cerrar el más reciente. Los otros modales aún deben permanecer activos y mostrados. Al hacer clic en los botones Atrás, debe seguir cerrando más modales según su secuencia de apertura o según lo que se muestra actualmente en la pantalla. ¿Cómo puedo hacer esto?