[whatwg] Selector API
Bronislav Klučka
Bronislav.Klucka at bauglir.com
Mon Oct 17 13:06:19 PDT 2011
Hello,
at this point Selector API is missing certain functionality: to target
child nodes.
Consider following fragment:
<ul class="list">
<li>node 1
<ul>
<li>node 1.1</li>
<li>node 1.2</li>
</ul>
</li>
<li>node 2
<ul>
<li>node 2.1</li>
<li>node 2.2</li>
</ul>
</li>
</ul>
targeting node 1 and node 2 in CSS is easy:
.list > li
selector API against document as well
document.querySelectorAll(".list > li");
but let's say there are multiple ul.list element on the page and e.g.
via click event I got reference to one of those list
myListVariable.querySelectorAll(" > li");
does not work... selector is missing parent reference
of course the same goes for + and ~ combinators
sure UL children are always LI, one could simply traverse through child
nodes, but there can be other user cases (searching for all section.box
that are children of section#mainContent having all kinds of sections,
navs, headers, footers, paragraphs...)
Would it be possible to either
1/ accept combinators without left hand reference assuming that matches
the element (or body in case of document.querySelector[All])
e.g. myListVariable.querySelectorAll(" > li");
2/ have Element object exposing selector property that would uniquely
identify such element in document (like "body > section:nth-child(5) >
article:nth-child(3) > p:first-child") which could be used as reference
e.g. myListVariable.querySelectorAll(myListVariable.selector + " > li");
?
Bronislav Klucka
More information about the whatwg
mailing list