मुझे g
अपने मनमाने तत्व के लिए वास्तव में चौड़ाई और ऊंचाई जानने की आवश्यकता है SVG
क्योंकि उपयोगकर्ता द्वारा क्लिक करने के बाद मुझे उसके चारों ओर एक चयन मार्कर खींचना होगा।
क्या मैं इंटरनेट में देखा है की तरह कुछ है: d3.select("myG").style("width")
। समस्या यह है कि तत्व में हमेशा एक स्पष्ट चौड़ाई विशेषता सेट नहीं होगी। उदाहरण के लिए, जब मैं अंदर एक सर्कल बनाता हूं, तो इसमें चौड़ाई के बजाय g
रेडियस ( r
) सेट होगा। यहां तक कि अगर मैं window.getComputedStyle
एक पर विधि का उपयोग करता हूं circle
, तो भी यह "ऑटो" लौटाएगा।
क्या मनमाने ढंग से svg
सेगमेंट की चौड़ाई की गणना करने का कोई तरीका है D3
?
धन्यवाद।
getBoundingClientRect()
केवल SVG के बजाय का उपयोग करेंgetBBox()
। जैसे:d3.select("body").node().getBoundingClientRect().width