c3.js圆环图onclick功能

时间:2016-04-08 02:50:45

标签: javascript jquery d3.js c3.js

我在我的网站上创建了一个C3js圆环图,我在图表中分配了一个onclick功能,我想要一个按钮来启动该功能,但是,我无法想象任何好处这样做的方法。

我尝试创建一个按钮以激活下面的函数,找到该元素并将其绑定到我的.onclick()函数:

  $("#test").click(function(){
        $(".c3-arc-data2").click();
  });

但它没有用。

请参阅fiddleJS中的示例:https://jsfiddle.net/mcd6ucge/52/

扩展:

我有一个if语句用于更改图表的数据,当数据更改为另一个案例时,onclick函数无法正常工作

    if(x = "something"){
        $(".uldateBtn1").html(
        '<li id="test-fliter" class="dateBtn hvr-underline-from-left" style="margin-top:10px !important;">test</li>'
                                )

        $("#test-fliter").click(function(){

          var evt = new MouseEvent("click");//make a mouse event
          d3.select(".c3-arc-test").node().dispatchEvent(evt);

         });
    }

else{
 $(".uldateBtn1").html(
    '<li id="test2-fliter" class="dateBtn hvr-underline-from-left" style="margin-top:10px !important;">test</li>'
                            )

    $("#test2-fliter").click(function(){

      var evt = new MouseEvent("click");//make a mouse event
      d3.select(".c3-arc-test2").node().dispatchEvent(evt);

     });

}

if工作正常,但其他工作无效。

1 个答案:

答案 0 :(得分:6)

这样做

  $("#test").click(function(){
    var evt = new MouseEvent("click");//make a mouse event
    //dispatch the event on the element.
    d3.select(".c3-arc-data1").node().dispatchEvent(evt);
 });

工作代码here