SVG Aufruf von externen Funktionen

kennenburg

Mitglied
Hallo,

vielleicht kann mir ja einer helfen:
ich möchte in SVG eine javascript Funktion rufen, die im HTML Dokument steht. Hab gelesen, dass das funktioniert, allerdings funktioniert mein Aufruf nicht. Hier der Code-Ausschnitt:

Ich will die Testfunktion in SVG aurufen. Deshalb leg ich in der Funktion init ein click-event an.

function test(){
//parent.frames['B'].document.forms['menu'].elements['teile[]'][0].checked = true;
}

function init(){
var click ="test()";
svgdoc=parent.frames['D'].frames["svg"].document.embeds[0].getSVGDocument().rootElement;
svgdoc.getElementById(obj_name[0]).setAttribute("onclick", click);
}

Folgend kommt das eingebettet SVG Dokument:

<iframe name="svg" src="PKW_komplett_sensitive_ISODRAW61.svg" width="500" height="800" frameborder="0">
<p>Zur Anzeige der Grafik wird ein Browser-PlugIn (Viewer) ben&ouml;tigt, z. B. der <a href="http://www.adobe.com/svg/viewer/install/main.html">SVG Viewer 3.0 von Adobe</a>!</p>
</iframe>


Und das ist die Fehlermeldung:

Laufzeitfehler: Objekt erwartet: Line 0
 
Hallo.
Mal sehn ob ich Dich richtig verstanden habe.
Also in SVG Funktionen aufrufen geht.
Beispiel:

Das Javaskript habe ich ich extern, und binde es in der SVG-Datei ein
<defs><script xlink:href="internal.js" type="text/ecmascript"/></defs>

// JavaSkript internal.js
function InternalClick(click_evt,shadow,text1)
{
var objekt;
objekt=document.getElementById(shadow).style;
alert("Die ID ist: " +shadow );
}

<svg>
<rect id="shadow11" x="10" y="5" style="fill:#ffffff; opacity: 0.00;" width="177" height="337" onclick="InternalClick(evt,'shadow11')"/>
</svg>

Hoffe ich konnte Dir helfen
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück