Javascript D3缩放行为防止IE9中的单击事件
我补充说 现在,节点上的单击事件在IE9中不起作用Javascript D3缩放行为防止IE9中的单击事件,javascript,internet-explorer-9,d3.js,Javascript,Internet Explorer 9,D3.js,我补充说 现在,节点上的单击事件在IE9中不起作用 d3.behavior.zoom().on("zoom", redraw); 我该怎么做才能让点击事件在IE9中也能正常工作 //Jens通过覆盖mouseup.zoom(在mousemove上),我能够在IE9中保留单击事件 var nodeEnter = node.enter().append("g") .attr("class", "node") .attr("transform", fu
d3.behavior.zoom().on("zoom", redraw);
我该怎么做才能让点击事件在IE9中也能正常工作
//Jens通过覆盖mouseup.zoom(在mousemove上),我能够在IE9中保留单击事件
var nodeEnter = node.enter().append("g")
.attr("class", "node")
.attr("transform", function(d) { return "translate(" + source.y0 + "," + source.x0 + ")"; })
.on("click", click, true);
奇怪:如果我在IE窗口中打开一个新选项卡,就会执行(在节点上)单击事件。是否关闭选项卡?不执行单击事件。请看我的JSFIDLE:在chrome中,我似乎根本无法实现这一点。如果缩放矩形在前面,它将吞噬单击事件;如果在后面,它将永远无法获取单击事件。有什么想法吗?我在ie9和ie10上也有同样的问题。对我来说奇怪的是:当我在ie中打开第二个标签时,点击事件开始工作。。。
var pan = svg.append("g")
.attr("transform", "translate(" + panTranslate + ")")
.call(d3.behavior.zoom().on("zoom", function(d){
panTranslate[0] += d3.event.translate[0];
panTranslate[1] += d3.event.translate[1];
pan.attr("transform", "translate(" + panTranslate + ")");
d3.select(window).on("mouseup.zoom", function(){
d3.select(window).on("mousemove.zoom", null).on("mouseup.zoom", null);
});
return true;
})).on("dblclick.zoom", null);