模拟触发d3js事件

Jquery的click事件,d3里面不能模拟触发;因此扩展了一下d3js的方法

jQuery.fn.d3Click = function () {
 this.each(function (i, e) {
 var evt = document.createEvent("MouseEvents");
 evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
 e.dispatchEvent(evt);
 });
};


调用方法与jquery的click事件一直:
$("#guowenke").d3Click();


方法二


 d3.selectAll("#" + gtPrefix + "go").each(function (d, i) {
                                        var onClickFunc = d3.select(this).on("click");
                                        onClickFunc.apply(this, [d, i]);
                                    });
posted @ 2016-07-18 11:12  博客园董事长  阅读(974)  评论(0编辑  收藏  举报