Die Browser, die Teile der SVG-Spezifikation (Firefox usw.) implementiert haben, testen für uns kostenlos - wenn ich einen Mousedown-Listener an ein SVG-Objekt anschließe, werde ich benachrichtigt, sobald die Form angeklickt wird. Dies ist besonders bei komplexen Polygonformen erstaunlich.Hit-Test SVG Formen?
Ich frage mich, ob es eine Möglichkeit gibt, ich kann diese Funktion für ein bisschen mehr Hit-Tests verwenden. Ich möchte wissen, ob ein gegebenes Rechteck irgendeine meiner SVG-Formen schneidet.
Zum Beispiel füge ich meinem Element 3 komplexe Polygone hinzu. Jetzt möchte ich wissen, ob ein Rechteck (40, 40, 100, 100) eines von ihnen schneidet. Hat jemand eine Idee, wie ich möglicherweise in die bereits große Hit-Test-Unterstützung eingreifen könnte, anstatt diesen ganzen Code selbst hinzuzufügen?
Dank
Vielen Dank, dass Sie darauf hingewiesen haben, dass Ihre Lösung zu dieser Zeit nicht Standard war. Es ist immer noch ein Working Draft, aber glücklicherweise hat diese Methode es in die (sehr praktische!) CSSOM-Spezifikation geschafft: http://dev.w3.org/csswg/cssom-view/#dom-document-elementfrompoint – natevw
Vielen vielen Dank dafür ... – Sudarshan
Die in elementFromPoint() verwendeten Koordinaten sind absolut. Wenn Ihr SVG also nicht bei 0,0 beginnt, müssen Sie zwischen absoluten und relativen Koordinaten einstellen. –