Чтобы узнать индекс опции, ближайшей к верхней границе select при прокрутке, вам понадобится немного JavaScript кода.
Сначала вам нужно получить элемент select, к которому хотите привязать прокрутку, и назначить обработчик события прокрутки. Для этого вы можете использовать метод addEventListener и событие scroll:
var selectElement = document.getElementById("mySelect"); selectElement.addEventListener("scroll", function() { // Ваш код будет здесь });
Внутри обработчика события scroll вам нужно определить текущую позицию прокрутки с помощью свойства scrollTop элемента select. Затем вы можете пройти по всем опциям внутри select и сравнить их положение относительно верхней границы, чтобы найти опцию, находящуюся ближе всего к верху.
selectElement.addEventListener("scroll", function() { var scrollPosition = selectElement.scrollTop; var options = selectElement.options; var closestIndex = -1; var closestDistance = Infinity; for (var i = 0; i < options.length; i++) { var option = options[i]; var distance = Math.abs(option.offsetTop - scrollPosition); if (distance < closestDistance) { closestDistance = distance; closestIndex = i; } } alert("Индекс ближайшей опции к верху: " + closestIndex); });
Теперь, когда пользователь прокручивает select, вам будет выведено сообщение alert с индексом опции, которая находится ближе всего к верхней границе select.