Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scrollspy _getScrollTop() uses Window.scrollY which is not supported in IE #20261

Closed
steve-32a opened this issue Jul 8, 2016 · 3 comments
Closed

Comments

@steve-32a
Copy link

steve-32a commented Jul 8, 2016

Current code: https://github.com/twbs/bootstrap/blob/v4-dev/js/src/scrollspy.js

_getScrollTop() {
  return this._scrollElement === window ?
      this._scrollElement.scrollY : this._scrollElement.scrollTop
}

MDN says the Window.scrollY property is not supported in IE. I was able to confirm this in IE (11.0.9600.18282) on Windows 7. https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollY

One solution is to call jQuery.scrollTop() if scrollY is undefined. This works in IE on Windows 7. https://api.jquery.com/scrollTop/

_getScrollTop() {
  return this._scrollElement === window ?
      this._scrollElement.scrollY || $(this._scrollElement).scrollTop() : this._scrollElement.scrollTop
}
@cvrebert
Copy link
Collaborator

cvrebert commented Jul 8, 2016

Or we could try pageYOffset as mentioned on that MDN article.

@GarrettSYHampton
Copy link

GarrettSYHampton commented Aug 11, 2016

I can take this task on. Can this be assigned to me?

Should I just create a PR?

@adoerler
Copy link

adoerler commented Nov 7, 2016

Hi,

I can confirm that $(this._scrollElement).scrollTop() would work.

This issue was driving me crazy, as it worked on the bootstrap demo page (http://v4-alpha.getbootstrap.com/components/scrollspy/) but not on my project.

In the demo the scrollspy is attached to a div instead to the body, so window.scrollY is not used here, as the _scrollElement != window.

It would be great if one of the posted fixes could be implemented.

KInd regards
Andreas

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants