我正在尝试递归触发 d3.js 上的事件。
这(不涉及 d3.js)有效:http: //jsfiddle.net/emepyc/98HmT/
$("#b1").on("click", function() {
var elem = $(this);
console.log(elem);
console.log("Pressed");
setTimeout(function(){console.log(elem); $(elem).trigger("click")}, 1000)
});
但这(在 d3.js 上)没有:http: //jsfiddle.net/emepyc/bmdKW/
d3.select("#node1").on("click", function() {
var elem = $(this);
console.log(elem);
console.log("Pressed");
setTimeout(function(){console.log(elem); $(elem).trigger("click")}, 1000)
});
有任何想法吗?
编辑: 似乎 jQuery 的“触发器”没有发送真实事件;它只调用自己的听众。因此,它无法看到 d3 设置的“单击”事件处理程序。