John Resig wrote:

I presume what you want instead is that element-rooted queries are
handled by matching such that each simple selector (CSS2 definition)
or sequence of simple selectors (css3-selectors definition, and I
*still* object to changing the meaning of existing terms) must match
an element that is or is a descendant of the specified element (the
root of the query).

Or do you want to eliminate "is or" in my previous paragraph, to
exclude the query root?  Or something else?

I would exclude "is or" - only descendant elements, in this case. For example:

  <div><div id="test"><div><div id="inner"></div></div></div></div>
  <script>
  // matches <div id="inner"></div>
  document.getElementById("test").querySelectorAll("div div").length == 1
  </script>

But that would mean that .querySelectorAll(":root div") would never match anything since :root (or :scope) could only match the element itself, which of course isn't a descendant.

/ Jonas

Reply via email to