Muszę dokładnie znać szerokość i wysokość dowolnego gelementu w moim, SVGponieważ po kliknięciu go przez użytkownika muszę narysować wokół niego znacznik wyboru.
Co widziałem w Internecie jest coś takiego: d3.select("myG").style("width"). Problem polega na tym, że element nie zawsze będzie miał wyraźnie ustawiony atrybut szerokości. Na przykład, kiedy utworzę okrąg wewnątrz g, będzie on miał ustawioną radious ( r) zamiast szerokości. Nawet jeśli użyję window.getComputedStylemetody na a circle, zwróci ona „auto”.
Czy istnieje sposób, aby obliczyć szerokość dowolnego svgelementu w D3?
Dziękuję Ci.
getBoundingClientRect()zamiast pliku tylko SVGgetBBox(). Tak jak to:d3.select("body").node().getBoundingClientRect().width