Ich implementiere eine Aufgabe relativ zum Zeichnen des Diagramms. Es erfordert, dass wenn der Benutzer auf einer Zelle des Diagramms schwebt, es alle vorherigen und nachfolgenden dieser Zelle und Links hervorhebt. Ich habe herausgefunden, wie man ein Element hervorhebt, indem man darauf klickt. Und ich bin mir nicht sicher, ob ich Links markieren kann. Ist es möglich zu tun?Wie alle Elemente relativ zu einer Zelle im Diagramm hervorgehoben werden, wenn jointjs verwendet wird
Antwort
Ich habe es auf diese Weise gelöst:
this.listenTo(this.options.paper, 'cell:mouseover', function (cellView) {
const links = this.options.paper.model.getConnectedLinks(cellView.model, {deep: true});
const neighbours = this.options.paper.model.getNeighbors(cellView.model);
cellView.highlight();
neighbours.forEach((element) => {
const viewElement = this.options.paper.findViewByModel(element);
viewElement.highlight();
});
links.forEach((link) => {
const viewLink = this.options.paper.findViewByModel(link);
viewLink.highlight();
});
});
Verbindungen und Elementen aus der Zelle erben. Zellen sind Backbone-Modelle mit assoziierten cellViews. CellView ist eine Backbone-Ansicht, in der sich die Highlight-Methode befindet. LinkView ist die spezifische Ansicht für Links, die von CellView erbt. CellViews Standard-Highlight-Methode funktioniert gut für rechteckige Zellen, aber für Links ist es nicht so gut wie die Highlight ist ein rechtwinkliges Rechteck Bounding Box um den gesamten Link.
Die Hervorhebungsmethode verwendet zwei Parameter, von denen der zweite den Typ der Hervorhebung angeben kann. Dies ist dokumentiert here. Einer der zulässigen "Typen" ist, wo Sie eine CSS-Klasse angeben können. Sie können eine Klasse definieren und hier angeben.
Wenn das nicht genug ist, wäre eine weitere Option LinkView zu erweitern und Ihre eigenen "Highlight" -Methoden zu implementieren. Stellen Sie diese neue linkView dann dem Papierkonstruktor als Vorlage zur Verfügung.
- 1. ListView-Elemente werden nicht visuell "hervorgehoben", wenn sie im Kontextaktionsmodus ausgewählt werden
- 2. LibreOffice Calc: Wie wird Zeile als pro Zelle Wert hervorgehoben?
- 3. Wie Garbage Collector behandelt wird, wenn alle Objekte verwendet werden
- 4. xlrd: Zelle relativ zu einer anderen Zelle auswählen
- 5. Wie können Elemente in einer Chrome-Erweiterung ähnlich wie in DevTools hervorgehoben werden?
- 6. In JointJs, wie kann ich alle Elemente zusammen verschieben, indem Sie ein eingebettetes Element ziehen?
- 7. JointJs-Diagramm in einem modalen Bootstrap?
- 8. Wie JointJs Elemente/Links mit Typoskript zu erweitern
- 9. Zelle muss fett hervorgehoben werden in Google Spreadsheet
- 10. Excel-Grafik - Zelle mit Formel als leere Zelle im Diagramm
- 11. Wie wird eine Taste hervorgehoben, wenn gedrückt wird?
- 12. bedingte Formatierung einer Zelle, wenn ein Zellenname für eine Formel in dieser Zelle verwendet wird
- 13. welche Funktionen können auf einem benannter Bereich verwendet werden, wenn für ein Diagramm verwendet wird
- 14. Wie umgehen Sie ein Polymerprojekt, wenn Google-Diagramm verwendet wird?
- 15. Wie Matplotlib Text relativ zum Diagramm positioniert
- 16. Sicherstellen, dass alle Ausnahmen berücksichtigt werden, wenn PHP verwendet wird
- 17. Wie wird numpy.polyfit verwendet, um in ein Diagramm zu passen?
- 18. Liste, wenn Elemente im Bildlauffenster angezeigt werden
- 19. Wie können Selektionen in einer tkinter-Listbox hervorgehoben werden?
- 20. Wie wird die Zelle in Excel hervorgehoben, wenn sie beim Vergleich in verschiedenen Blättern leer ist?
- 21. Propability relativ zu einer Nummer
- 22. Excel bedingte Formatierung auf Zelle im Vergleich zu Adjecant-Zelle
- 23. Wie Position Element (Diagramm) in Excel zu einer bestimmten Zelle?
- 24. Wirkung, wenn alle HTML-Elemente gesetzt werden
- 25. Excel 2016: IF-Funktion mit Position der Zelle relativ zu einer anderen Zelle
- 26. Wie wird jede Matrix in einer Zelle mit einer anderen Farbe in einem 3D-Diagramm dargestellt?
- 27. Wie Inhalte in einem Array hervorgehoben werden
- 28. Wie wird die Zeilennummer des Widgets in einer Zelle von Qtablewidget angezeigt, wenn es angeklickt wird?
- 29. In R: wie Lücken im Datum-Zeit-Reihen-Diagramm entfernt werden, wenn posixct für die Datum-Uhrzeit-Spalte verwendet wird?
- 30. JointJS verbindet automatisches Layout