【问题标题】:D3.js check to see if a node has a classD3.js 检查一个节点是否有一个类
【发布时间】:2018-07-19 05:26:37
【问题描述】:

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

这是我到目前为止没有工作的。我认为问题是我不知道如何查看当前的.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);
        });

这是它在网络检查器中的外观:

【问题讨论】:

    标签: class d3.js selection


    【解决方案1】:

    d3 的classed 函数不带第二个参数,将返回被选元素是否具有传递的类。

    d3.select("g.sliceActive").classed("slice5")
    

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

    【讨论】:

      猜你喜欢
      • 2021-10-16
      • 1970-01-01
      • 1970-01-01
      • 2018-07-31
      • 1970-01-01
      • 2023-03-10
      • 2021-06-20
      • 1970-01-01
      • 2011-01-11
      相关资源
      最近更新 更多