Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

119
Visualizações
¿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 Respostas
Responde à pergunta

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda