微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – D3缩放功能在Google Chrome中无效

我正在研究svg项目我使用d3.js来获得更好的ui,在我的图表中添加了缩放功能,但奇怪的是它的缩放在Google Chrome中不起作用

svg.call(d3.behavior.zoom().scaleExtent([1,8]).on("zoom",zoom));

function zoom() {
    svg.attr("transform","translate(" + d3.event.translate + ")scale(" + d3.event.scale + ")");
}

而且我想阻止节点拖动的转换,因为节点和窗格同时拖动,所以它看起来非常难看.
这是我的fiddle

测试将左侧元素拖动到右侧div

最佳答案
你基本上就在那里.要使缩放行为起作用,请直接在svg下面转换g元素而不是svg本身 – 这没有任何效果.要防止在SVG拖动上拖动节点,可以使用已经设置的nodedrag变量 – 只需在dragstart上将其设置为true,在dragend上将其设置为false.

完成jsfiddle here.

原文地址:https://www.jb51.cc/jquery/428257.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐