D3.js检查节点是否有类

New*_*oJS 22 class selection d3.js

我正在尝试编写一个click函数来选择下一个g.slice节点,添加一个类.sliceActive.sliceActive从原始节点中删除.slice.但是,只有当你在最后一个g.slice(有一个类.slice5)时,你才会将.sliceActiveg.slice一个类添加到第一个类.slice0.

到目前为止,这是我无法正常工作的.我认为问题是我不知道如何查看当前.sliceActive节点是否也有类.slice5.

        $(".next").click(function(){
            var nextSlice;
            if(d3.select("g.sliceActive").hasClass("slice5")){
                nextSlice= d3.select(".slice0");
            }else{
                nextSlice= d3.select("g.sliceActive + g");
            }               
            d3.select("g.sliceActive").classed("sliceActive",false);
            nextSlice.classed("sliceActive",true);
        });
Run Code Online (Sandbox Code Playgroud)

以下是它在Web检查器中的外观: 在此输入图像描述

Gab*_*man 41

classed没有第二个参数的d3 函数将返回所选元素是否具有传递的类.

d3.select("g.sliceActive").classed("slice5")
Run Code Online (Sandbox Code Playgroud)

应该告诉你你需要知道什么.