Ric*_*ard 2 javascript jquery d3.js
我正在寻找与jQuery的子选择器相当的D3,例如:
$('rect', this).addClass('active');
Run Code Online (Sandbox Code Playgroud)
我的用例是这样的:每当用户点击父元素时,我希望rect元素切换active类.bar.
<g class="bar">
<rect height="18" width="300"></rect>
<text class="label">Wholesale </text>
<text class="value">679</text>
</g>
Run Code Online (Sandbox Code Playgroud)
目前我有这个:
bar.on('click', function(d) {
if (d3.select(this).classed("active")) {
d3.select(this).classed("active", false);
} else {
d3.select(this).classed("active", true);
}
});
Run Code Online (Sandbox Code Playgroud)
但是,这显然是将active类应用于g元素,而不是rect我想要的.
var bar = d3.select(".bar");
bar.on('click',
function(d) {
var rect = d3.select(this).select("rect");
var hasClass = rect.classed("active");
rect.classed("active", !hasClass);
}
);
Run Code Online (Sandbox Code Playgroud)