【问题标题】:c3.js donut chart onclick functionc3.js圆环图onclick函数
【发布时间】:2016-07-29 04:37:34
【问题描述】:

我在我的网站上创建了一个 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 工作正常,但 else 不工作。

【问题讨论】:

    标签: javascript jquery d3.js c3.js


    【解决方案1】:

    这样做

      $("#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

    【讨论】:

    • 谢谢!这么好的答案。获得它的节点和触发器是个好主意!
    猜你喜欢
    • 2015-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多