-
Notifications
You must be signed in to change notification settings - Fork 20.6k
Open
Labels
Milestone
Description
Bug Reports:
- What do you expect to happen?
offset() should return offset from document origin - What actually happens?
On some browsers, it can be off when pinch-zoomed - Which browsers are affected?
Edge, possibly Safari in the future.
Description
Open the console and click/tap on the input box. Now pinch-zoom into the page, scroll to the very top, then scroll back down to the input box and tap it. The output should always be the same.
See https://bugs.webkit.org/show_bug.cgi?id=170981 for some background and https://developers.google.com/web/updates/2017/09/visual-viewport-api for the details.
The issue is that offset() is adding getBoundingClientRect (which is relative to the layout viewport) to window.pageX|YOffset which is relative to the visual viewport.
Note: Chrome recently made pageYOffset relative to the layout viewport so this isn't an issue there.