如果我想根据元素的子节点的存在来过滤元素,我该怎么做d3.js
?
例如在这个 html 结构中,我将如何选择<li>
具有子<a>
元素的元素?
<ul>
<li><a href="#">Link 1</a></li>
<li>Bullet</li>
<li><a href="#">Link 2</a></li>
<li><a href="#">Link 3</a></li>
<li>Bullet</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
对于那些不知道的人,提出和回答自己的问题是完全可以的......
使用该filter()
功能:
var ul = d3.select("ul");
var lis = ul.selectAll("li").filter(function() {
return ! d3.select(this).select("a").empty();
});
Run Code Online (Sandbox Code Playgroud)