Description
https://w3c.github.io/IntersectionObserver/#update-intersection-observations-algo says:
Let observer list be a list of all IntersectionObservers whose root is in the DOM tree of document. For the top-level browsing context, this includes implicit root observers.
This means that, per spec, if you're in a cross-origin iframe, a new IntersectionObserver()
without a root node, is supposed to be processed in the top browsing context.
I don't think that matches what engines do (it's not implementable in Gecko at least).
What gecko does is, it uses the IntersectionObserver
s current document on construction as the document from where it's processed. That seems to be what WebKit is doing too here.
@szager-chromium do you know what Blink is doing? Should we spec the current / constructor document behavior or was the current language intentional?