Heim >Web-Frontend >Front-End-Fragen und Antworten >So implementieren Sie ein HTML-Geschäftsprozessdiagramm mit reinem Javascript
Im Bereich der Webentwicklung ist das Geschäftsprozessdiagramm ein grafisches Werkzeug, das es Menschen ermöglicht, den gesamten Geschäftsprozess klarer zu verstehen. Herkömmliche Geschäftsprozessdiagramme werden normalerweise mithilfe von Tool-Software erstellt. Die Implementierung von Geschäftsprozessdiagrammen über JavaScript bietet jedoch große Vorteile hinsichtlich Wartbarkeit und Benutzerfreundlichkeit. In diesem Artikel erfahren Sie, wie Sie mit reinem Javascript ein HTML-Geschäftsflussdiagramm implementieren.
Zuerst müssen Sie eine leere HTML-Datei und eine CSS-Datei als Text und Stylesheet vorbereiten. In diesem Artikel wird das Bootstrap-Framework verwendet. Wenn Sie es nicht verwenden möchten, können Sie andere CSS-Frameworks verwenden oder CSS-Stile direkt handschreiben.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>纯javascript实现html业务流程图</title> <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.5.0/css/bootstrap.min.css"> <link rel="stylesheet" href="style.css"> </head> <body> <div id="workflow"></div> <script src="script.js"></script> </body> </html>
Die am häufigsten verwendeten Grafiken in Geschäftsprozessdiagrammen sind Rechtecke und Pfeile. Wir müssen zunächst ein JavaScript-Objekt mit Rechteck und Pfeil erstellen. Im Rechteckobjekt müssen wir die Koordinaten, die Breite, die Höhe, die Farbe und den Text des Rechtecks speichern.
function Rectangle(x, y, width, height, color, text) { this.x = x; this.y = y; this.width = width; this.height = height; this.color = color; this.text = text; this.draw = function() { ctx.fillStyle = this.color; ctx.fillRect(this.x, this.y, this.width, this.height); ctx.fillStyle = "#ffffff"; ctx.font = "14px Arial"; ctx.fillText(this.text, this.x + 10, this.y + 20); } }
Im Pfeilobjekt müssen wir den Startpunkt, den Endpunkt, die Linienfarbe und die Pfeilform des Pfeils speichern.
function Arrow(fromX, fromY, toX, toY, color) { this.fromX = fromX; this.fromY = fromY; this.toX = toX; this.toY = toY; this.color = color; this.draw = function() { var headlen = 10; var angle = Math.atan2(this.toY - this.fromY, this.toX - this.fromX); ctx.beginPath(); ctx.moveTo(this.fromX, this.fromY); ctx.lineTo(this.toX, this.toY); ctx.strokeStyle = this.color; ctx.lineWidth = 2; ctx.stroke(); ctx.beginPath(); ctx.moveTo(this.toX, this.toY); ctx.lineTo(this.toX - headlen * Math.cos(angle - Math.PI / 6), this.toY - headlen * Math.sin(angle - Math.PI / 6)); ctx.lineTo(this.toX - headlen * Math.cos(angle + Math.PI / 6), this.toY - headlen * Math.sin(angle + Math.PI / 6)); ctx.fillStyle = this.color; ctx.fill(); } }
Als nächstes müssen wir die Funktion schreiben, die das Geschäftsprozessdiagramm generiert. In dieser Funktion müssen wir zunächst ein neues Canvas-Element erstellen und es in die HTML-Seite einfügen. Als nächstes müssen wir Rechtecke und Pfeile generieren und sie in einem Array speichern, um das Flussdiagramm anschließend neu zu zeichnen.
function generateWorkflow() { var canvas = document.createElement('canvas'); canvas.id = "workflow-canvas"; canvas.width = 800; canvas.height = 600; document.getElementById('workflow').appendChild(canvas); var rect1 = new Rectangle(80, 50, 120, 50, "#007bff", "发起申请"); var rect2 = new Rectangle(400, 50, 120, 50, "#ffc107", "待审核"); var rect3 = new Rectangle(80, 200, 120, 50, "#28a745", "审核通过"); var rect4 = new Rectangle(400, 200, 120, 50, "#dc3545", "审核拒绝"); var arrow1 = new Arrow(200, 75, 400, 75, "#007bff"); var arrow2 = new Arrow(520, 75, 680, 75, "#ffc107"); var arrow3 = new Arrow(200, 225, 400, 225, "#28a745"); var arrow4 = new Arrow(520, 225, 680, 225, "#dc3545"); var rects = [rect1, rect2, rect3, rect4]; var arrows = [arrow1, arrow2, arrow3, arrow4]; for (var i = 0; i < rects.length; i++) { rects[i].draw(canvas.getContext('2d')); } for (var i = 0; i < arrows.length; i++) { arrows[i].draw(canvas.getContext('2d')); } }
Nach Abschluss der obigen Schritte müssen wir nur noch die Funktion aufrufen, die das Geschäftsflussdiagramm in der Initialisierungsfunktion generiert, um das Geschäftsflussdiagramm auf der HTML-Webseite anzuzeigen.
window.onload = function() { generateWorkflow(); }
Wenn wir diesen Javascript-Code ausführen, können wir das vollständige Geschäftsflussdiagramm auf der Webseite sehen. Durch einfachen Javascript-Code haben wir ein Flussdiagramm implementiert, um die Webseite anschaulicher und leichter verständlich zu machen.
Zusammenfassung
In diesem Artikel wird erläutert, wie Sie mit reinem Javascript ein HTML-Geschäftsflussdiagramm implementieren. Wir haben das Canvas-Element zum Zeichnen von Rechtecken und Pfeilen verwendet und das Geschäftsprozessdiagramm mithilfe von Javascript-Code generiert. Im Vergleich zu herkömmlichen Zeichenwerkzeugen ist diese Methode wartbarer und bequemer. Mithilfe von JavaScript und anderen Frontend-Technologien können wir verschiedene praktische Funktionen in der Webentwicklung effizienter ausführen.
Das obige ist der detaillierte Inhalt vonSo implementieren Sie ein HTML-Geschäftsprozessdiagramm mit reinem Javascript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!