Thomas Meinike: svg und javascript

Beitrag lesen

Hallo,

Die Interaktion funktionniert ohne problem, nach dem Einbinden durch getURL() kommt eine Fehlermeldung:"Objekt erwartet line:1 column:0"

Das eingebundene SVG-Dokument hat seinen eigenen document-Kontext incl. script-Bereich. Regiert wird das Dokument aber vom einbindenden SVG-Dokument und dessen Scope.

Allerdings klappt das "Inline-Scripting":

Ersetze mal

  
<circle onclick="machewas(evt);" cx="150" cy="250" r="20" style="fill:red; stroke:black">

durch

  
<circle onclick="alert('Hallo Welt!')" cx="150" cy="250" r="20" style="fill:red; stroke:black">

Wenn die Funktion machewas() in das enbindende Dokument eingefuegt wird, dann funktioniert es bei mir testweise im ASV 3.03.

Das Auslesen der Funktion aus dem CDATA-Abschnitt nebst Einfuegen in den script-Kontext des anderen Dokuments bewirkt aber offenbar nichts.

Probiere es alternativ mit zwei document-Objekten, die jeweils onload ueber evt.target.ownerDocument belegt werden.

Eine weitere Idee waere, ein neues script-Element zu erzeugen und die relevante Funktion dort anzulegen.

MfG, Thomas