Weird scrolling issue

I haven’t been able to figure out why the scrolling resets, but I have a workaround. I basically have a function bound to the scroll event, where I keep track of the current scroll location. I then check if the current value is 0, and the previous value is greater than some threshold (I found 100 works well). If so, then I reset the position to the old value.

handleScroll(e) {
  let targetDiv = get(this, 'targetDiv');     // CSS selector of panel with scrollbar
  let prevScrollPosition = get(this, 'scrollPosition');
  let currScrollPosition = this.$(targetDiv).scrollTop();
  if (currScrollPosition === 0 && prevScrollPosition > 100) {
    this.$(targetDiv).scrollTop(prevScrollPosition);
    return;
  }
  set(this, 'scrollPosition', currScrollPosition);
},

This approach feels all sorts of hacky and not ideal, but it works for my use case. I still hope to figure out the underlying issue though.