-
Notifications
You must be signed in to change notification settings - Fork 20.5k
Description
Originally reported by rictic at: http://bugs.jquery.com/ticket/15201
JSBin link to reproduce: http://jsbin.com/tamugo/2/edit (try in Chrome (or Firefox with dom.webcomponents.enabled turned on))
An element that is in the shadow dom appears in some ways to not be contained in the document. .offset() assumes that if the element isn't contained in the document then it's disconnected and returns an offset of {top: 0, left: 0}.
When .offset() checks to see if the element is disconnected it could try walking up the DOM not only by checking .parentNode as .contains() does but also by looking at .host, which is how one travels up from a shadow root into its containing element.
Issue reported for jQuery 2.1.1