我正在React应用程序中尝试使用SVG元素。
我在path
元素上有这样的JSX:
<path
key={`path-${i}`}
className={'pathelem'}
d={d3Geo
.geoPath()
.projection(this.projection($width, $height))(d)}
onClick={
evt =>
this.mapClicks(
evt,
d,
this.getMapData(d, evt)
)
}
stroke="#fff"
/>
由于某种原因,在移动设备上,当元素初始呈现在页面上时,我可以单击并发生预期的行为。但是,如果我缩放并单击我的resetZoom
fn,则单击事件不再在元素上触发。 (这仅发生在移动设备上,特别是在ios Safari中。
resetZoom =() => {
d3Selection
.select('svg.elem')
.call(zoomed.transform, d3Zoom.zoomIdentity)
.on('.zoom', null);
}
}