klawischnigg: Inline-SVG → auf Style(CSS) per JS zugreifen?

Beitrag lesen

Hi there,

Was Du im Beitrag nicht erkennen konntest: Im Original-Quelltext war das Skript unterhalb der SVG-Graphik. Die sollte also schon geladen gewesen sein.

Ok, das muß das von mir Gesagte aber nicht notwendigerweise ausschliessen. Das Laden von Ressourcen im Browser ist ja kein linearer Vorgang (von Skripten einmal abgesehen). Ich hab nie probiert, inwieweit das browserabhängig ist, aber wenn man bspw. ein großes Bild lädt und das auch noch von einer langsamen Quelle, dann kannst Du auch mit einem unterhalb liegenden Skript die Eigenschaften dieses Bild zB mit getcomputedStyle noch nicht abfragen. Das hat mich fast in den Wahnsinn getrieben, daß getComputedStyle.height im Skript immer 0 zurückgegeben hat, obwohl die gleiche Abfrage auf der Console den richtigen Wert ausgegeben hat😉. Erst ein kleiner Hinweis mit einem ähnlichen Problem auf stackoverflow hat mich dann in die richtige Richtung geschubst...😉

Was jetzt natürlich eingeräumterweise noch lange nicht bedeutet, daß das auch die Ursache Deines Problems ist.

Mir gehts also um den „Objekt-Zugriffspfad“ aus dem HTML in das SVG-Objekt und sodann auf dessen Kind-Objekte:

Psedocode:

<html>
    <alles_davor></alles_davor>

    <svg ID="SVG_Objekt">
        <g ID="Kind_Objekt_1"></g>
        <g ID="Kind_Objekt_2"></g>
    </svg>

    <alles_danach></alles_danach>
</html>

Ich will also Style-Eigenschaften von DocumentSVG_ObjektKind_Objekt_n überschreiben. (Das dann in Abhängigkeit von der Mausposition und der zu ermittelnden Position des SVG-Objekts, bzw. dessen Kindern.)

Das müsste eigentlich schon gehen, das sind ja nur nth-children von svg, ich seh da jetzt keinen Grund, warum die nicht selektierbar wären...