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

176
Visualizações
¿Detectar con precisión si un navegador admite desplazamiento suave?

Ahora que Safari 15.4 ahora es compatible con el desplazamiento suave nativo, estoy buscando una forma confiable de verificar si un navegador usa el desplazamiento suave nativo.

He probado este método:

 if (getComputedStyle(document.body).scrollBehavior === 'smooth') { console.log('Smooth scrolling natively supported '); }else{ console.log('Smooth scrolling NOT natively supported'); }

Pero no detecta con precisión el desplazamiento suave en Chrome y Safari 15.4 (devuelve un falso negativo). Esto se debe a que scrollBehavior está configurado en auto .

También he probado este método:

 let supported = 'scrollBehavior' in document.documentElement.style; if(supported == true){ console.log('Smooth scrolling natively supported '); }else{ console.log('Smooth scrolling NOT natively supported'); }

Lo que parece ser más confiable, pero cuando deshabilito el desplazamiento suave en Google Chrome, lee un falso positivo. ¿Es posible que esto se deba a que el navegador lo admite, pero simplemente no está habilitado? (Lo deshabilité iniciando Chrome desde la terminal usando /Applications/Google\ Chrome.app --args --disable-smooth-scrolling )

¿Cuál es el mejor método para verificar si el desplazamiento suave es compatible de forma nativa con un navegador? ¿Alguien tiene una versión anterior (anterior a v61) en la que pueda probarlos u otros navegadores que no admitan de forma nativa el desplazamiento suave?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

La forma más nativa de hacer esto sería usar la regla @supports CSS para verificar la compatibilidad del navegador:

 @supports (scroll-behavior:smooth) { /* Supports smooth scrolling */ }

Para hacer esta verificación en JavaScript, puede usar esta función en el objeto CSS:

 if(window.CSS.supports('scroll-behavior', 'smooth')) { // Supports smooth scrolling }
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