को घटना मैं एक डी 3 हिस्टोग्राम चार्ट है, जो पर मैं सलाखों के लिए एक 'onclick' घटना संलग्न किया है। मैं चार्ट की पृष्ठभूमि में एक 'ऑनक्लिक' ईवेंट भी संलग्न करना चाहता हूं (यानी चार्ट में हर जगह जो बार नहीं है), लेकिन मुझे इससे परेशानी हो रही है। मैं कई तरह से घटना संलग्न की कोशिश की है, लेकिन हर मामले में, इस नई घटना मेरी ओवरराइड करने के लिए लगता है बार-क्लिक करें:अटैच किया जा रहा 'onclick' डी 3 चार्ट पृष्ठभूमि
कुछ प्रयास:
$("svg:not('.bar')").on("click", function(){ //do stuff });
$("g:not('.bar')").on("click", function(){ //do stuff });
var svg = d3.select("#histogram_block").append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")")
.on("click", function(d,i){
if (d) { //do stuff}
else { //do stuff }
};
मैं यह सोचते हैं रहा हूँ वहाँ डालने का एक तरीका है एसवीजी ऑब्जेक्ट को इवेंट हैंडलर शुरू होने पर, लेकिन मुझे इसके बारे में जाने का सही तरीका नहीं पता है।
बस एक अनुस्मारक। '$ (" svg: नहीं ('बार') ") 'का अर्थ है' एसवीजी 'जिसमें' बार 'वर्ग नहीं है। इसका मतलब यह नहीं है कि 'bar' वर्ग वाले तत्वों के बाहर 'svg's section प्राप्त करें। –