79726151

Date: 2025-08-05 13:15:00
Score: 2
Natty:
Report link

Вариант с нативным js

const scrollHandler = (e) => useCallback(() =>{
  const content = document.getElementsByClassName('js-tabs-ingredient');

  Array.from(content).forEach((el) => {
    const rect = el.getBoundingClientRect();
    const elemTop = rect.top;
    const elemBottom = rect.bottom;
    const isVisible =
      elemTop < window.innerHeight / 2 && elemBottom > window.innerHeight / 2;

    if (isVisible) {
      const type = el.dataset.id;
      setCurrentTab(type);
    }
  });
}, []);
<div className="js-tabs-ingredient" data-id={currentTab}>
  <h3 className="text text_type_main-medium mb-6" ref={tabRefs[currentTab]}>
    {title}
  </h3>
</div>
Reasons:
  • Long answer (-0.5):
  • Has code block (-0.5):
  • No latin characters (2):
  • Low reputation (1):
Posted by: Инна Рахманина