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

84
Vistas
Barra de desplazamiento dinámica con altura conectada a coordenadas de desplazamiento Y

Creé dos componentes 'DynamicScrollBarContainer' y 'DynamicScrollBar'.

Estoy tratando de hacer que el componente anidado tenga una altura dinámica conectada al desplazamiento vertical de la página, y al tener dos colores de fondo diferentes, el contenedor se llena o se vacía a medida que el usuario se desplaza hacia arriba o hacia abajo en la página.

 import styled from 'styled-components'; export const DynamicScrollbarContainer = styled.div` position: fixed; right: 5%; top: 35%; width: 2px; height: 300px; background-color: rgba(255,255,255,0.5); @media ${(props) => props.theme.breakpoints.xl} { display: none; } `; export const DynamicScrollbar = styled.div` width: 100%; height: 0%; // this is the value I'd need to get dynamic background-color: #ffffff; `
 import React from 'react'; import { DynamicScrollbarContainer, DynamicScrollbar } from './ScrollbarStyles'; const ScrollBar = () => ( <DynamicScrollbarContainer> <DynamicScrollbar /> </DynamicScrollbarContainer> ); export default ScrollBar;

¿Alguien tiene alguna idea? He estado jugando con window.scrollY y otras cosas, pero parece que no puedo hacerlo correctamente

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

0

Esa es una MALA idea . Tuve que pasar horas arreglando problemas con cosas como esta en el trabajo. Algunos aún en pie. Realmente debería considerar otras opciones antes de hacer algo como esto.

Pero, si realmente tiene que hacerlo, algo como esto debería ayudarlo a comenzar.

 const ScrollBar = () => const [a, s] = useState(0); useEffect(() => { const c = () => s(window.scroll /* I don't remember the prop, something like this */); // remember to add the other scroll events window.addEventListener('scroll',c) return () => window.removeEventListener(c); }, []); <DynamicScrollbarContainer> <DynamicScrollbar scroll={a} /> </DynamicScrollbarContainer> );
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