Ich muss ein Attribut eines SVG-Elements animieren, das kein CSS-Gegenstück hat -
<circle cx="..." />
Wie kann ich das erreichen?
Oder ich kann eine Alternative, z.B. wenn ich <g/>
mit CSS top
oder ähnlich animieren könnte.
Irgendwelche Erfahrungen?
Danke, Ondra
Beachten Sie, dass dies kein Duplikat von Wie kann ich einen Attributwert (keine Stileigenschaft) mit jQuery animieren? , da es sich um HTML handelt.
Siehe auch jQuery unter SVG
Am Ende habe ich eine manuelle Animation wie in mit JQuery ziehbarem SVG gemacht und Jquery-svg .
jQuery-Lösung immer noch willkommen.
Wie auch immer, das hat mich zu anderen Problemen geführt - Einheiten stimmen nicht überein. evt.clientX
ist in Pixeln, aber circle.cx.baseVal.value
ist in einigen relativen Einheiten. Also wenn ich es mache
Und wenn <embed>
3x größer ist als die "eigene" Größe des SVG, dann bewegt sich der Kreis 3x schneller als der Zeiger.
Ich habe es sogar versucht
%Vor% Aber convertToSpecifiedUnits()
gibt undefined
zurück, was ein Mangel an Implementierung von Ссылка .
jQuery selbst erfüllt möglicherweise nicht Ihre Anforderungen für einfaches svg drag & amp; drop (zu diesem Zeitpunkt), also müssen Sie entweder machen, was Sie wollen, oder ein anderes js-Framework verwenden. Ich würde zum Beispiel empfehlen, raphaël zu sehen.
Die Werte von event.clientX / Y befinden sich nicht in Benutzereinheiten, sie müssen konvertiert werden. Siehe z. B. Ссылка für ein Beispiel zum Ziehen von Svg-Objekten.
Tags und Links jquery attributes animation svg jquery-animate