2013-07-08 10 views
6

Ich benutze Raphaël-Bibliothek, um ein schnelles Zeichenwerkzeug zu erstellen. Es gibt jedoch einen Fehler mit dem Pfeilende, sie werden für alle Zeilen gleich vergeben.Raphaël Bug: Pfeil-Ende

Say, ich habe lineA mit einer Pfeilspitze von # Raphael-Marker-Oval. Dann zeichne ich lineB und weise auch eine Pfeilspitze # raphael-marker-oval zu. Immer wenn ich die Pfeilspitze von lineA in eine neue Farbe ändere, wird auch die Pfeilspitze von lineB in dieselbe Farbe geändert.

Bitte helfen Sie !!

+0

Bitte zeigen Sie Ihren Code – George

+0

Ich war auf der Suche nach Informationen über Raphael 'Pfeil-Ende' und fand diese, die das Problem veranschaulicht: ** http: //jsfiddle.net/hJ39e/** - jede Pfeilspitze sollte die gleiche Farbe haben wie der Pfad es kippt, aber stattdessen nehmen sie beide die Farbe des neuesten Pfades mit Pfeilspitzen. – user568458

Antwort

4

Ich habe ein ähnliches Problem, wo Pfeilspitzen verschwinden, wenn ein enthaltendes div versteckt ist. Dies scheint ein Fehler in Raphael zu sein: https://github.com/DmitryBaranovskiy/raphael/pull/525 Ich bin gerade dabei zu recherchieren und herauszufinden, wie man es beheben kann ...

Sieht aus wie das Problem behoben wird, wenn MarkerIds eindeutig sind. Das ist, was ich tat, es zu beheben: in Raphael.js: Linie 28:

var raphaelMarkerIdFixCount = 1; 

Linie 5938: ersetzen diese:

markerId = "raphael-marker-" + se + type + w + h; 

mit diesem:

markerId = "raphael-marker-" + se + type + w + h + raphaelMarkerIdFixCount; 
raphaelMarkerIdFixCount++; 

Da es nun bedeutet, dass jedes Mal ein neues Markerelement erstellt wird, kann es zu Speicherproblemen kommen, wenn Sie eine große Anzahl von Pfeilen zeichnen - möglicherweise kann jemand kommen mit einem besseren Patch, dieser Fix ist sicherlich in der Kategorie "schnell und schmutzig" - aber es hat für mich funktioniert.

0

Ich habe das gleiche Problem. Und versuchte, es zu beheben, aber es kommt von Raphael.js

Ich bin sicher, dass es ein Fehler ist. Verschwende deine Zeit nicht damit. Vielleicht können Sie es an sie melden

+0

Ok danke Roma, aber kennst du noch ein anderes Skript oder eine andere Idee, damit es funktioniert? – Reetika