Tengo touchstart para cerrar submenús en un menú de respuesta móvil. Desafortunadamente en Safari esto no funciona. En otros navegadores también a veces se atasca.
if ( event.type === 'touchstart' ) { const menuItem = this.parentNode; if ( event.cancelable ) event.preventDefault(); for ( const link of menuItem.parentNode.children ) { if ( menuItem !== link ) { link.classList.remove( 'focus' ); } } menuItem.classList.toggle( 'focus' ); }