Я хочу построить маленький модуль с реагировать. Внутри этого модуля у меня есть прокручиваемый элемент с
scroll-snap-points-y: repeat(40px);
scroll-snap-type: y mandatory;
, поэтому он придерживается одного из элементов списка. Мне нужно знать, какой элемент в данный момент находится в центре (выбран). В настоящее время я получаю scrollTop
элемента и делю его на 50 (40 пикселей плюс поля 5 пикселей). Но это работает только в сафари. В chrome значение, когда оно привязывается к одному из элементов, значение scrollTop равно 47 на элемент, и оно изменяется с масштабированием. На 20+ элементах этой ошибки достаточно, чтобы выбрать предыдущий элемент, если я округлю значения. Есть ли способ получить размер элемента для деления на. Или, может быть, я могу получить выбранный элемент другим способом. Кроме того, я не хочу никаких зависимостей в моем коде, так как это почти сделано, и у меня не было никаких других, кроме как реагирует сам.