Javascript D3在顶部画一个圆圈?

Javascript D3在顶部画一个圆圈?,javascript,css,d3.js,z-index,Javascript,Css,D3.js,Z Index,我想把一组圆圈带到顶端 [JS] function brushUser(userList){ userMapSvg.selectAll('circle') .data(userNodes) .classed('selected', function(d){ if ( contains(userList, d.firmwideId)){ return true; }

我想把一组圆圈带到顶端

[JS]
function brushUser(userList){
    userMapSvg.selectAll('circle')
        .data(userNodes)
        .classed('selected', function(d){
            if ( contains(userList, d.firmwideId)){
                return true;
            }
            else
                return false;
            });
}

[CSS]
#selector-usermap-body circle {
    fill: steelblue;
    z-index: 1;
}

#selector-usermap-body circle.selected{
    stroke: black;
    stroke-width: 2;
    z-index: 10;
}
但它不起作用

我想知道是否有一种方法可以通过CSS和类来实现这一点


问题类似于,但我正在寻找一种优雅的方式。

添加
位置:绝对编码到您的圈中以使z索引工作

SVG没有任何明确的z索引概念。在SVG中实现Z顺序的唯一方法是四处移动节点,以便希望位于顶部的节点在DOM中的显示时间晚于希望位于底部的节点


有人说要为SVG 2添加此功能,但据我所知,它仍处于早期开发阶段:。

正如@ScottCameron所指出的,唯一的方法是实际移动节点。通常,对于一组同级元素,这非常容易做到:

circle.on('mouseover', function() {
    this.parentNode.appendChild(this);
});

您可以在这里看到一个工作示例:

我非常确定SVG中没有这两个功能。