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

850
Visualizações
Safari: el evento de enfoque no funciona en el elemento del botón

El evento de enfoque funciona bien en todos los navegadores excepto en Safari cuando se ha hecho clic en él.

Y funciona bien en el elemento div[tabindex], pero no funciona en el elemento button o input:button.

También puede obtener el evento de enfoque cuando uso $('.btn').focus().

¿Por qué el evento de enfoque no se ha activado al hacer clic?

Aquí está mi código:

 $(".btn").focus(function (e) { $(".result").append("<p>Event:"+e.type+", target:"+e.target+"</p>"); })
 .result{min-height:200px;border:1px solid #000;}
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <button class="btn">button 1</button> <input type="button" class="btn" value="button 2"/> <div class="btn" tabindex="0">div element</div> <h1> Result: </h1> <div class="result"> </div>

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

La documentación indica que no es compatible: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus

ingrese la descripción de la imagen aquí

over 4 years ago · Santiago Trujillo Relatório

0

¿Por qué el evento de enfoque no se ha activado al hacer clic?

Descubrimos a través de la investigación que Safari y FireFox en Mac no se enfocan en los botones cuando haces clic en ellos.

La forma en que solucionamos eso fue agregar un detector de clics a nuestros botones y llamar a focus() en el botón en el que se hizo clic.

En Angular se veía así:

 <button (click)="myClickFunction(); $event.target.focus();>My Button</button>
over 4 years ago · Santiago Trujillo Relatório

0

Consulte https://bugs.webkit.org/show_bug.cgi?id=13724

Esto funciona según lo previsto en MacOS. Al hacer clic en un botón, un botón de opción o una casilla de verificación, el elemento no se enfoca; por lo tanto, no puede perder el enfoque y desencadenar un desenfoque.

La solución es darle un evento de clic que le dé el foco al elemento.

over 4 years ago · Santiago Trujillo 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