Ich füge nur Bootstrap und jquery zu meinem d3-Skript hinzu. Es funktioniert meistens, aber ich merke, dass ich keine Rechtsklick-/Kontextmenüs mehr bekomme. Mein Setup-Code sieht wie folgt aus:d3 contextmenu nicht feuernd
this.svg_canvas = d3.select("#" + this.container_id)
.append("svg")
.attr("width", this.width)
.attr("height", this.height)
.on("click", this._selectNodes.bind(this))
.on("mousedown", this._handleMouseDown.bind(this))
.on("contextmenu", function(data, index) { graph_view._showContextMenu(data, index); })
.call(this.zoom_behavior.bind(this))
;
Es ist erwähnenswert, dass alle anderen Gesten - klicken, mousedown- und Zoom - erscheinen nur einwandfrei zu funktionieren.
Irgendwelche Ideen, wo Sie suchen oder wie Sie dies debuggen?
Nur eine wilde Vermutung; ist es möglich, dass dein "mousedown" -Code verhindert, dass das standardmäßige 'contextmenu'-Ereignis ausgelöst wird? – JSBob
Doh. Ich wurde von falschen Debugging-Anweisungen getäuscht: 'mousedown' und' contextmenu' Ereignisse feuern ganz gut. Fehlerhaftes css verhinderte die Anzeige des Kontextmenüs. Move along, nichts zu sehen hier ... –