Ich muss die Breite und Höhe eines beliebigen g
Elements in meinem genau kennen, SVG
da ich einen Auswahlmarker darum zeichnen muss, sobald der Benutzer darauf geklickt hat.
Was ich im Internet gesehen habe, ist so etwas wie : d3.select("myG").style("width")
. Das Problem ist, dass für das Element nicht immer ein explizites Breitenattribut festgelegt ist. Wenn ich zum Beispiel einen Kreis innerhalb von erstelle g
, wird r
anstelle der Breite radious ( ) gesetzt. Selbst wenn ich die window.getComputedStyle
Methode für a verwende circle
, wird "auto" zurückgegeben.
Gibt es eine Möglichkeit, die Breite einer beliebigen svg
Auswahl in zu berechnen D3
?
Danke dir.
getBoundingClientRect()
anstelle von nur SVGgetBBox()
. Wie so:d3.select("body").node().getBoundingClientRect().width