У меня есть функция, которая будет переключаться между каждым экземпляром класса («выделенным») каждый раз, чтобы вызвать gonext().
Вот полный код:
var currentPos = 0;
function gonext() {
var pos = $(".highlighted").eq(currentPos).position();
console.log(Math.round(pos.top));
$(".highlighted").eq(currentPos).css("color", "red");
currentPos++;
$(".main").scrollTop(pos.top);
}
.main {
height: 100px;
border:1px solid grey;
padding: 10px 20px;
overflow: scroll;
}
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<hr>
<button onclick="gonext()">Got to Next</button>
<hr>
<div class="main">
<div><span class="highlighted">a</span></div>
<div><span class="highlighted">s</span></div>
<div><span class="highlighted">v</span></div>
<div><span class="highlighted">a</span></div>
<div><span class="highlighted">s</span></div>
<div><span class="highlighted">v</span></div>
<div><span class="highlighted">a</span></div>
<div><span class="highlighted">s</span></div>
<div><span class="highlighted">v</span></div>
<div><span class="highlighted">a</span></div>
<div><span class="highlighted">s</span></div>
<div><span class="highlighted">v</span></div>
</div>
Проблема заключается в том, что как только он переходит в следующую позицию, он прокручивается вверх и затем вниз.
См. Консольрегистрируйте позиции для получения дополнительной информации.
Как я могу исправить это, чтобы он просто прокручивался до следующего и т. д. ... без скачка вверх / вниз?