D3 DataMaps: OnClick-Ereignisse auf Blasen

Claudiu S.

Ich folge den Datamaps-Dokumenten und versuche, einen onClick-Listener auf die Blasen einzustellen, die ich auf dem SVG rendere. Jetzt hat das svg div die folgenden Sub-Tags:

<svg>
  <g id class="datamaps-subunits">..</g>
  <g id class="bubbles">..</g>
</svg>

Die Dokumente sagen, dass dies für die auf der Karte aufgeführten Länder folgendermaßen erfolgen sollte:

done: function(datamap) {
            datamap.svg.selectAll('.datamaps-subunits').on('click', function() {
              alert("hello");  
            });
        }

Dies funktioniert einwandfrei, wenn Sie versuchen, auf bestimmte Regionen auf der Karte zu klicken.

Der Versuch, den gleichen Listener an die Bubbles- Klasse anzuhängen, führt zu nichts.

done: function(datamap) {
            datamap.svg.selectAll('.bubbles').on('click', function() {
                alert("hello"); 
            });
        }
markmarkoh

Zum Zeitpunkt der doneAusführung wurde bubblesnoch kein bubblesPlugin hinzugefügt .

new DatamapGibt ein Objekt mit einer d3-Auswahl zurück bei svg:

var map = new Datamap({...}); 
//add bubbles
map.bubbles(bubbleData);
//handle bubble clicks
map.svg.selectAll('.bubbles').on('click', function() {...});

Das sollte für die erste Charge von Blasen funktionieren.

Wenn Sie dynamisch Blasen hinzufügen und die Listener nicht zurücksetzen möchten, können Sie die jQuery-Ereignisdelegierung verwenden, um die dynamischen Blasen zu verarbeiten:

$(map.svg[0][0]).on('click', '.bubbles', function(e) {
  //handle click here as well
});

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

D3 DataMaps (oder jvectormap): So platzieren Sie ein benutzerdefiniertes Objekt durch Koordinaten auf der Karte

Kartenzoom mit D3 und Datamaps

d3js: Wenden Sie Animationen zusammen auf Blasen und Texte an

Android dynamische Blasen auf der Ansicht

So blasen Sie eine Ausnahme auf

Blasen Sie verschiedene Layouts im Adapter auf

Blasen Sie mehrere Ansichten in ein Fragment auf

d3: Mit DataMaps eine Karte der USA erstellen

Excel VBA, wie man auf Onclick-Ereignisse eines Div auf IE11 klickt

onClick-Ereignisse blockieren

D3 Drag & Mouseup-Ereignisse

Mehrere HTML-Onclick-Ereignisse treten nicht auf, wenn ich möchte

So erstellen Sie zwei Onclick-Ereignisse auf einer anklickbaren Karte in React

Der beste Weg, um mehr als eine Funktion zum Reagieren auf OnClick-Ereignisse zu haben

Android: Verhindern Sie mehrere onClick-Ereignisse auf einer Schaltfläche (die deaktiviert wurde).

Die Material-UI-Schaltfläche in Reagieren reagiert nur auf onClick-Ereignisse in der Auffüllung

So fügen Sie allen Elementen auf der Seite mehrere Onclick-Ereignisse hinzu

Können "onClick" -Ereignisse in HTML-Seiten Variablen auf einer JS-Seite ändern?

Der beste Weg, um mehr als eine Funktion zum Reagieren auf OnClick-Ereignisse zu haben

Der beste Weg, um mehr als eine Funktion zum Reagieren auf OnClick-Ereignisse zu haben

"Rad" -Ereignisse auf Touchscreens

Zwei Ereignisse auf Knopfdruck

Blasen Sie zwei Layouts mit unterschiedlichen Funktionen auf

So blasen Sie einen ViewStub mit ViewBinding in Android auf

So blasen Sie das Menü in Aktivität auf

So blasen Sie eine Ansicht mit einem Layout auf

So blasen Sie Hashmap <String, List <Items>> in die Recyclerview auf

Xamarin.Android Blasen Sie eine benutzerdefinierte Ansicht auf

Blasen Sie zwei Arten von XML in RecyclerView auf

TOP Liste

  1. 1

    So verschieben Sie ein Bild in Flutter/Dart mit einem Draggable

  2. 2

    Unity Build-Fehler: Der Name 'EditorUtility' ist im aktuellen Kontext nicht vorhanden

  3. 3

    TypeAhead.js zeigt keine Ausgangsschienen an?

  4. 4

    Deklarieren einer nicht initialisierten Variablen in der Klassendefinition in Python

  5. 5

    Wie kann ich eine verschachtelte Schleife mit lapply in R ersetzen?

  6. 6

    spring-data-jpa: ORA-01795: Die maximale Anzahl von Ausdrücken in einer Liste beträgt 1000

  7. 7

    Warum funktioniert Phantomjs nicht mit dieser Site?

  8. 8

    Interpolieren Sie mit Python die 2D-Matrix entlang der Spalten

  9. 9

    numpy: Berechnen Sie die Ableitung der Softmax-Funktion

  10. 10

    Wie vermeide ich, dass die gesamte App neu geladen wird, wenn Nav.Link von React-Bootstrap verwendet wird?

  11. 11

    MongoDB eingebettetes Dokument unterscheiden und filtern

  12. 12

    Aktualisieren des Werts im Json-Objekt in Python

  13. 13

    Warum funktioniert das Umgebungslicht in diesem Beispiel nicht?

  14. 14

    Python gibt einen Fehler aus, dass eine Datei nicht vorhanden ist, wenn dies eindeutig der Fall ist

  15. 15

    Wie verwende ich Format-Table ohne Abschneiden von Werten?

  16. 16

    So berechnen Sie die Verfügbarkeit von Anwendungen (SLA)

  17. 17

    Überprüfen Sie, ob der ausgewählte Wert 'YES' ist, wenn ja, aktivieren Sie ein Steuerelement mit Javascript

  18. 18

    Python: Spalten mit demselben Namen zusammenführen, wobei der Mindestwert beibehalten wird

  19. 19

    Holen Sie sich verwandte Pillen Inhalt mit angeklickten img in Angular

  20. 20

    Eclipse Oxygen - Projekte verschwinden

  21. 21

    Wie aktualisiere ich ein Feld in einer Raumdatenbank mit einem Repository und einem Ansichtsmodell?

heißlabel

Archiv