Necesito saber exactamente el ancho y la altura de un gelemento arbitrario en mi SVGporque necesito dibujar un marcador de selección a su alrededor una vez que el usuario ha hecho clic en él.
Lo que he visto en internet es algo así como: d3.select("myG").style("width"). El problema es que el elemento no siempre tendrá un atributo de ancho explícito establecido. Por ejemplo, cuando creo un círculo dentro de g, tendrá radious ( r) en lugar del ancho. Incluso si uso el window.getComputedStylemétodo en a circle, devolverá "auto".
¿Hay alguna forma de calcular el ancho de una selección arbitraria svgen D3?
Gracias.
getBoundingClientRect()lugar de solo SVGgetBBox(). Así:d3.select("body").node().getBoundingClientRect().width