Ich habe mehrere "Event" -Klassen, die einige meiner SVG-Elemente abdecken. Ich gebe jeder Klasse einen Ereignishandler für mouseover
und mouseout
, und wenn ein Element mehr als eine Klasse hat, möchte ich beide Handler auslösen. Wie mache ich das? Es scheint, dass, wenn ichEinem Element mehr als einen Event-Handler geben, indem man es mit verschiedenen Selektoren auswählt
d3.selectAll(".a-class")
.on("mouseover", function() {
// do A
})
.etc();
d3.selectAll(".another-class")
.on("mouseover", function() {
// do B
})
.etc();
dann, wenn ich über ein Element schweben, die beiden Klassen haben, nur B
(den zweiten Handler) Feuer, offenbar, weil es die ersten außer Kraft setzt. Gibt es eine Methode, um einen Event-Handler "anzuhängen", anstatt ihn neu zu definieren?
Bin ich richtig in der Annahme, dass der Handler 'A' in Anbetracht Ihres Codes zuerst ausgelöst wird? – Bluefire
Ich glaube schon, obwohl ich nicht sicher bin, dass es unbedingt garantiert ist –