죄송합니다초보입니다
40
2021-07-21 17:24:17
3
100

리액트 스크롤 이벤트 관련해서 질문드려요.


스크롤해서 일정 시점이 됐을 때

모달을 띄우고 싶습니다.

scrollTop 값이 dom의 height값보다 커졌을때 띄우면 될꺼같은데,

쿼리셀렉터 말고 ref로 dom height 값을 구하는 방법을 모르겠고 ㅠㅠ

 해상도 마다 height값이 변할꺼까지 생각하니까 막막합니당

도움 부탁드려요!!

 

0
  • 답변 3

  • 183183
    103
    2021-07-21 18:00:35

    제가 사용하는 방법 공유드리면

    let howMuchScroll = $(document).scrollTop() - $('#element').offset().top;
    if(howMuchScroll > $('#element').height() * 0.5)

    이런식으로 구현하시면 50%정도 내려왔을때 나오게끔 할 수 있어요


  • 183183
    103
    2021-07-21 18:01:43

    해상도마다 height 변하는건 useEffect에 load , resize이벤트 걸어주시면돼요

  • 죄송합니다초보입니다
    40
    2021-07-22 09:51:04

    크 회사에서 제이쿼리 사용하지말라그래서 고생좀하다 성공했습니다 도움 감사드립니다!

  • 로그인을 하시면 답변을 등록할 수 있습니다.