in svg auf variablen die in einer javascript funktion stehen zugreifen

  • folgendes problem.....


    1. js funktion:
    ***************
    erste javascript funktion schreibt mit:
    document.getElementsByTagName("p")[1].firstChild.data = +anzahl+; in einer


    2. js funktion:
    ***************
    2. js funktion die variable "anzahl" in den schon vorbereiteten "p" tag.
    document.writeln("<p class=\"text\"> &nbsp;</p> <hr align=\"left\"
    width=\"70%\">");


    jetzt steht in dieser 2. funktion (die auch den restlichenhtml code zu der
    seite schreibt) also meine zeile mit der variable.


    in paar zeilen darunter binde ich eine svg grafik ein.

    document.write("<object data=\"auswertung_1.svg\" width=\"500\"
    height=\"700\" type=\"image/svg+xml\">");
    document.write("<embed src=\"auswertung_1.svg\" width=\"500\" height=\"500\"
    type=\"image/svg+xml\" />");
    document.write("</object>");

    in dieser svg grafik möchte ich jetzt irgendwie auf die variable "anzahl"
    zugreifen.
    habe versucht über im jscript teil des svg dokuments über:
    document.getElementsByTagName("p")[1].firstChild.data; an den die variable
    zu kommen... aber das klappt nicht . und ich habe leider nicht soo viel
    ahnung wie ich in js variablen übergebe, oder ob ich aus der svg datei auf
    die anderen js variablen zugreifen kann - oder ob die sich untereinander
    überhaupt vertragen...
    die variable an die ich möchte wird also ersteinmal in der ersten js
    funktion generiert, bzw steht dann in der 2. js funktion in dem "p" tag zur
    verfügung.
    wie kann ich diese variable irgendwie aus meiner svg datei ansprechen?


    ich hoffe sie verstehen mein problem und ich hab emich einigermaßen
    verständlich ausgedrückt

  • Von SVG aus auf js Variablen zugreifen kann man glaub ich grundsätzlich nicht, ich wüsste nicht wie. Oder vielleicht geht's schon aber mir fällt keine Möglichkeit ein...

    Vielleicht kannst du sagen, was du mit dem SVG-Code genau machen willst. Dann kann ich dir hoffentlich besser etwas vorschlagen.

    SVG sollte nur die Grafiken beschreiben und js sollte die SVG-Attribute kontrollieren. Das sollte grundsäzlich immer der Ansatz sein.

    Schau dir außerdem diese Objektreferenzen von js an:
    http://de.selfhtml.org/javascript/objekte/node.htm
    Mit diesen kann man die SVG-tags, Attribute, Elemente usw. leichter manipulieren.

    The idea behind this technique is surprisingly simple: just go ahead and do whatever you want to without paying attention to what anybody else is doing. If there is a problem, worry about it later. (Many politicians use this algorithm, too) -- A. S. Tanenbaum, M. v. Steen, Distributed Systems

  • Hallo,
    vielleicht intressierts ja noch den einen oder anderen:
    verwendet man das adobe-Plugin, dann gelangt man über
    svgWin=document.getElementById(svgObjekt).getWindow()
    an das window-Element.
    Verwendet man einen W3C-konformen viewer, dann geht das über
    svgWin=document.getElementById(svgObjekt).contentDocument.defaultView

    darüber sollte man dann ganz normal alle javascript variablen und funktionen des svg-Elements/-Objektes ansprechen können.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!