根据这个example ,我正在尝试添加标记选择(即添加 .on("click"...) 到标记变量)。但是,当您将鼠标移到 Google map Canvas 上时,您会得到可以拖动的手,并且无法使用它选择任何 svg 元素。
有没有办法(临时)禁用该功能,以便您可以单击 D3 元素?
最佳答案
我现在正在制作这样的 map 。我没有使用 Google 的标记(而不是 d3 SVG 圆圈),但我发现鼠标悬停/单击/等事件必须位于 map 的 overrideMouseTarget 层中的对象上:
var overlay = new google.maps.OverlayView();
overlay.onAdd = function() {
var layer = d3.select(this.getPanes().overlayMouseTarget)
.append("div")
.attr("class", "providers");
...
}
我认为 d3js.org 上的 gMaps 演示使用了不同的层。
关于javascript - D3,Google map ,选择 d3 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11948780/