Javascript D3缩放行为防止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

我补充说

现在,节点上的单击事件在IE9中不起作用

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);