Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

116
Vistas
¿Cómo puedo evitar que Firebase Web UI se desplace hacia abajo a la sección de inicio de sesión automáticamente?

Cuando un usuario abre mi sitio web, no quiero que el sitio se desplace automáticamente hacia abajo hasta la sección 'iniciar sesión'. Creo que Firebase se está desplazando hacia abajo a la sección cuando realizo:

 var ui = new firebaseui.auth.AuthUI(firebase.auth()); ui.start("#firebaseui-auth-container", uiConfig);

http://launchpad.behavioralsight.com/

¿Cómo puedo evitar que haga esto?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

No parece que FirebaseUI se pueda configurar para evitar el desplazamiento. Hay un problema abierto de Github (y una pregunta relacionada con StackOverflow ).

El desplazamiento ocurre en setupFocus_() . Hay varias versiones según el tipo de widget, pero creo que está interesado en passwordsignup.js .

La solución es bastante simple: pase la opción preventScroll a cada llamada de focus() de esta manera:

 this.getEmailElement().focus({preventScroll:true});

Si quiere ser elegante, puede hacer que esta sea una opción configurable del método AuthUI.start() como se sugiere en el problema de Github.


Si no desea modificar FirebaseUI, puede funcionar una solución alternativa basada en esta respuesta relacionada :

  1. Enfoca manualmente otro elemento en tu sitio (como el botón).
  2. Maneje el evento de focusout como se describe en la respuesta anterior:

Sin embargo, antes de eso, lo que sea que tenga el foco recibirá un evento de "enfoque de "focusout" de tipo FocusEvent . Suponga que su variable de evento es e . La propiedad e.relatedTarget se completará con el elemento que está a punto de recibir el foco. Si maneja el evento "focusout" a poner el foco en lo que está perdiendo el foco e.target , inmediatamente volverá a recibir el foco, junto con un evento "focus" y "focusin" , mientras que el objeto que iba a recibir el foco no recibirá el foco ni ningún evento de foco.

  1. Luego, elimine este controlador focusout para que la sección de inicio de sesión se pueda enfocar después del enfoque automático inicial.
about 4 years ago · Juan Pablo Isaza Denunciar

0

Prueba esto. Está evitando que el campo incluso reciba el foco ya que no es visible en la pantalla. Luego, después de un segundo, muestre el formulario.

HTML

 <style> .loading #ui-sign-in-email-input { display: none; } </style> <div id="firebaseui-auth-container" class="loading"></div> <div id="loader">Loading...</div>

JavaScript

 ... uiShown: () => { setTimeout(() => { document.getElementById('firebaseui-auth-container').classList.remove('active'); }, 500); document.getElementById('loader').style.display = "none"; },

...

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda