brauchenSie müssen im E-Charts-Tooltip auf den Namen der Schule klicken, um zur Detailseite zu springen. Das Projekt ist in Shanghai ---> einem bestimmten Bezirk ----> einer bestimmten Schule (binden Sie ein Klickereignis in den Tooltip der letzten Ebene ein). Das Projekt wird mit Vue und Echarts implementiert. Echarts ist eine neue Version (^5.0.2) und kann Klickereignisse nicht an Fenster binden. Problemumgehung1. Tooltip festlegenenterable: true, //Erlaubt der Maus, die schwebende Ebene der Eingabeaufforderung zu betreten, triggeron:'click', //Bedingungen für das Auslösen der Eingabeaufforderungsbox mousemove wird ausgelöst, wenn die Maus bewegt wird click wird ausgelöst, wenn die Maus klickt 'mousemove|click' wird ausgelöst, wenn die Maus bewegt und gleichzeitig geklickt wird Tooltip: { //Promptbox-Komponente anzeigen: true, //Promptbox-Komponente anzeigen: "item", //Triggertyp: triggerOn: "mousemove", //Abgangsbedingung//formatter: "name: {b}<br/>coordinates: {c}", enterable: true, //Ermöglicht der Maus, die Eingabeaufforderungs-Suspendierungsebene zu betreten showContent: true, triggerOn: "click", //Bedingungen für das Auslösen des Tooltips mousemove Wird ausgelöst, wenn die Maus bewegt wird click Wird ausgelöst, wenn die Maus klickt 'mousemove|click' Wird ausgelöst, wenn die Maus bewegt und gleichzeitig klickt // confine: true, //Beschränke den ToolTip auf den Bereich des Diagramms className: "areaTool", // hideDelay: 100000, //Verzögerung der Verschwindezeit formatter: (item) => { this.hookToolTip = Element; // Längen- und Breitengrad sind zu lang, daher muss die Anzahl der Ziffern gekürzt und angezeigt werden, wobei sieben Dezimalstellen erhalten bleiben müssen // Das Klickereignis muss gebunden werden var tipHtml = ""; tipHtml = '<div style="width:2.5rem;height:80%;background:rgba(22,80,158,0.8);border:0.0125rem solid rgba(7,166,255,0.7)">' + '<div style="width:100%;height:0.375rem;line-height:0.375rem;border-bottom:0.025rem solid rgba(7,166,255,0.7);">' + '<i style="display:inline-block;width:0.125rem;height:0.125rem;background:#16d6ff;border-radius:0.5rem;">' + "</i>" + '<span id="btn-tooltip" style="margin-left:0.125rem;color:#fff;font-size:0.2rem;cursor:pointer">' + Artikelname + "</span>" + "</div>" + '<div style="padding:0.1875rem;text-align: left;">' + '<p style="color:#fff;font-size:0.15rem;">' + '<i style="Anzeige: Inline-Block; Breite: 0,1rem; Höhe: 0,1rem; Hintergrund: #16d6ff; Rahmenradius: 0,5rem; Rand: 0 0,1rem">' + "</i>" + "Längengrad" + '<span style="color:#11ee7d;margin:0 0.075rem;">' + Artikel.Wert[0].substr(0, 11) + "</span>" + "</p>" + '<p style="color:#fff;font-size:0.15rem;">' + '<i style="Anzeige: Inline-Block; Breite: 0,1rem; Höhe: 0,1rem; Hintergrund: #16d6ff; Rahmenradius: 0,5rem; Rand: 0 0,1rem">' + "</i>" + "Breitengrad" + '<span style="color:#11ee7d;margin:0 0.075rem;">' + Artikel.Wert[1].substr(0, 11) + "</span>" + "</p>" + '<p style="color:#fff;font-size:0.15rem;">' + '<i style="Anzeige: Inline-Block; Breite: 0,1rem; Höhe: 0,1rem; Hintergrund: #16d6ff; Rahmenradius: 0,5rem; Rand: 0 0,1rem">' + "</i>" + "Anzahl der Prüfungsräume" + '<span style="color:#11ee7d;margin:0 0.075rem;">' + Element.KomponentenIndex + "</span>" + "Stück" + "</p>" + '<p style="color:#fff;font-size:0.15rem;">' + '<i style="Anzeige: Inline-Block; Breite: 0,1rem; Höhe: 0,1rem; Hintergrund: #16d6ff; Rahmenradius: 0,5rem; Rand: 0 0,1rem">' + "</i>" + "Aufsicht" + '<span style="color:#11ee7d;margin:0 0.075rem;">' + Element.KomponentenIndex + "</span>" + "Stück" + "</p>"; tipHtml zurückgeben; }, }, 2. Definieren Sie die Variable hookToolTipWeisen Sie hookToolTip im Formatierer einen Wert zu, fügen Sie eine ID hinzu und erkennen Sie dann das DOM-Element durch Überwachen. Sie können das Ereignis durch Onclick binden oder das Ereignis durch addEventListener registrieren. betrachten: hookToolTip: { handler(neuerWert, alterWert) { console.log(neuerWert, alterWert, "---------watch"); : Let tooltipButton = document.querySelectorAll("#btn-tooltip"); //Das durch die Registrierung des Onclick-Ereignisses querySelectorAll erhaltene Element ist ein Array, wenn (tooltipButton.length > 0) { tooltipButton[0].onclick = dieser.pointNameClick; } // Ereignisse über addEventListener registrieren for (let i = 0; i < tooltipButton.length; i++) { tooltipButton[i].addEventListener("klicken", this.chartClick); } }, // sofort: wahr, // tief: wahr, }, }, 3. Methoden in Methoden hinzufügen4. Code vervollständigenDaten(){ hookToolTip: {}, }, betrachten: hookToolTip: { handler(neuerWert, alterWert) { console.log(neuerWert, alterWert, "---------watch"); : Let tooltipButton = document.querySelectorAll("#btn-tooltip"); //Das durch die Registrierung des Onclick-Ereignisses querySelectorAll erhaltene Element ist ein Array, wenn (tooltipButton.length > 0) { tooltipButton[0].onclick = dieser.pointNameClick; } // Ereignisse über addEventListener registrieren for (let i = 0; i < tooltipButton.length; i++) { tooltipButton[i].addEventListener("klicken", this.chartClick); } }, //Keine Notwendigkeit, die Seite zum Prüfen aufzurufen// instant: true, // tief: wahr, }, }, Methoden: { chartClick() { konsole.log( dies.hookToolTip, "----------Ereignisliste hinzufügen", dies.hookToolTip.name ); }, }, //echarts Tooltip: { //Promptbox-Komponente anzeigen: true, //Promptbox-Komponente anzeigen: "item", //Triggertyp: triggerOn: "mousemove", //Abgangsbedingung//formatter: "name: {b}<br/>coordinates: {c}", enterable: true, //Ermöglicht der Maus, die Eingabeaufforderungs-Suspendierungsebene zu betreten showContent: true, triggerOn: "click", //Bedingungen für das Auslösen des Tooltips mousemove Wird ausgelöst, wenn die Maus bewegt wird click Wird ausgelöst, wenn die Maus klickt 'mousemove|click' Wird ausgelöst, wenn die Maus bewegt und gleichzeitig klickt // confine: true, //Beschränke den ToolTip auf den Bereich des Diagramms className: "areaTool", // hideDelay: 100000, //Verzögerung der Verschwindezeit formatter: (item) => { this.hookToolTip = Element; Konsole.log(Element, "-----", this.hookToolTip); // Längen- und Breitengrad sind zu lang, daher muss die Anzahl der Ziffern gekürzt und angezeigt werden, wobei sieben Dezimalstellen erhalten bleiben müssen // Das Klickereignis muss gebunden werden var tipHtml = ""; tipHtml = '<div style="width:2.5rem;height:80%;background:rgba(22,80,158,0.8);border:0.0125rem solid rgba(7,166,255,0.7)">' + '<div style="width:100%;height:0.375rem;line-height:0.375rem;border-bottom:0.025rem solid rgba(7,166,255,0.7);">' + '<i style="display:inline-block;width:0.125rem;height:0.125rem;background:#16d6ff;border-radius:0.5rem;">' + "</i>" + '<span id="btn-tooltip" style="margin-left:0.125rem;color:#fff;font-size:0.2rem;cursor:pointer" onclick="chartClick">' + Artikelname + "</span>" + "</div>" + '<div style="padding:0.1875rem;text-align: left;">' + '<p style="color:#fff;font-size:0.15rem;">' + '<i style="Anzeige: Inline-Block; Breite: 0,1rem; Höhe: 0,1rem; Hintergrund: #16d6ff; Rahmenradius: 0,5rem; Rand: 0 0,1rem">' + "</i>" + "Längengrad" + '<span style="color:#11ee7d;margin:0 0.075rem;">' + Artikel.Wert[0].substr(0, 11) + "</span>" + "</p>" + '<p style="color:#fff;font-size:0.15rem;">' + '<i style="Anzeige: Inline-Block; Breite: 0,1rem; Höhe: 0,1rem; Hintergrund: #16d6ff; Rahmenradius: 0,5rem; Rand: 0 0,1rem">' + "</i>" + "Breitengrad" + '<span style="color:#11ee7d;margin:0 0.075rem;">' + Artikel.Wert[1].substr(0, 11) + "</span>" + "</p>" + '<p style="color:#fff;font-size:0.15rem;">' + '<i style="Anzeige: Inline-Block; Breite: 0,1rem; Höhe: 0,1rem; Hintergrund: #16d6ff; Rahmenradius: 0,5rem; Rand: 0 0,1rem">' + "</i>" + "Anzahl der Prüfungsräume" + '<span style="color:#11ee7d;margin:0 0.075rem;">' + Element.KomponentenIndex + "</span>" + "Stück" + "</p>" + '<p style="color:#fff;font-size:0.15rem;">' + '<i style="Anzeige: Inline-Block; Breite: 0,1rem; Höhe: 0,1rem; Hintergrund: #16d6ff; Rahmenradius: 0,5rem; Rand: 0 0,1rem">' + "</i>" + "Aufsicht" + '<span style="color:#11ee7d;margin:0 0.075rem;">' + Element.KomponentenIndex + "</span>" + "Stück" + "</p>"; tipHtml zurückgeben; }, }, Dies ist das Ende dieses Artikels über das Hinzufügen eines Klickereignisfalls in Echarts-Tooltips durch Vue. Weitere Vue-bezogene Inhalte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Beispiel für asynchronen Dateiupload in HTML
>>: 20 hervorragende Beispiele für die Farbabstimmung auf ausländischen Webseiten
Schauen wir uns zunächst eine Kastanie an EXPLAIN...
Bisher konnte react.forwardRef nicht auf höherwer...
Vorwort Während meines Praktikums in der Firma ha...
Mit dem Tag <tbody> wird der Stil des Tabel...
In diesem Artikel wird der spezifische Code von v...
1. Vue-Projekt verpacken Geben Sie den folgenden ...
Wie in der Abbildung gezeigt: Mit einer einzelnen ...
Wenn Sie kein Linux-System haben, finden Sie unte...
Vorwort Studenten, die JavaScript lernen, wissen,...
Der Unterschied zwischen Ausführen und Starten in...
Beginnen wir die Diskussion mit einer häufig gest...
Inhaltsverzeichnis Vorsichtsmaßnahmen Notwendige ...
In diesem Artikel wird der spezifische Code für d...
1. Allgemeine Schritte Zu Beginn haben wir die In...
Inhaltsverzeichnis Vorwort 1. Lebenszyklus in Vue...