Cerrar el teclado en Safari 15 en un iPhone activa el evento window.blur. El problema es que la aplicación también debe escuchar el evento window.blur para enviar información de que el usuario ha minimizado la aplicación y cerrar el teclado provoca un falso positivo. ¿Es posible separar de alguna manera estos casos?
Puede usar una combinación de eventos VisibilityChange y BeforeUnload para activar cuando el usuario minimiza o navega fuera del sitio web.
document.addEventListener("visibilitychange", (event) => { // check visibilityState if(document.visibilityState === 'visible') { //.. do stuff } else { // .. do something else } }); document.addEventListener('beforeunload', () => { // Your logic goes here });