【发布时间】:2018-07-25 04:52:57
【问题描述】:
我有一个简单的 svg 矩形,并使用 d3.js 在其上添加了缩放和平移。我还添加了一个按钮,以便在单击按钮后尝试重置缩放。代码如下:
<button>Reset</button>
<body>
<script>
function zoomed() {
svg.attr("transform", d3.event.transform)
}
var svg = d3.select("body")
.append("svg")
.attr("width", "100%")
.attr("height", "100%")
.call(d3.zoom().on("zoom", zoomed))
.append("g")
svg.append("rect")
.attr("x", 450)
.attr("y", 200)
.attr("width", 300)
.attr("height", 200)
.style("fill", "#B8DEE6")
$("#Reset").click(() => {
zoom.transform(container, d3.zoomIdentity.scale(1));
})
</script>
</body>
我已经尝试过 zoom.transform(container, d3.zoomIdentity.scale(1)) 但它似乎不起作用。谁能告诉我重置功能有什么问题?
【问题讨论】:
-
stackoverflow.com/q/45570145/2506522 的重复,没有接受的答案
标签: javascript d3.js svg