我有这个fiddle。使用Javascript的比例svg路径
当我点击路径时,我想放大它。但在缩放之后,点击的路径失去了他目前的位置。
这里我jQuery代码:
var svg = $("#svg-container");
svg.load("svg/fondcarte-collec_actuelle.svg", function(data) {
svg.children().find("path").click(function(e) {
$("#Layer_1 path").removeAttr("style");
var x = e.pageX - svg.width() - $(this).offset().left - this.getBoundingClientRect().width + svg.find("svg").offset().left + 250;
var y = e.pageY - svg.height() - $(this).offset().top - this.getBoundingClientRect().height + svg.find("svg").offset().top + 250;
console.log(this.x, this.y)
$(this).css("transform", "translate(" + x + "px, " + y + "px) scale(1.3)");
$(this).css("fill", "green");
})
})
- 我怎么能放大它,而不会丢失当前位置?
- 任何人都可以给一个网站的SVG教程和操纵?
如何能不能做到?
注:我问它没有插件,因为我想了解这个缩放概念。
谢谢先进。
只需设置'变换原点:50%50%;'并删除所有并发症与'translate'和你应该得到一些非常接近你正在寻找的东西。请注意,您可能还需要操作元素的顺序,以便您希望看到其他元素的元素是最后一个元素。 – jcaron
哇,它的作品谢谢你。 你可以设置此评论为anwser,我会将其标记为解决? –