JürgenB: Eval und Context

Beitrag lesen

Hallo LX,

Warum fügst Du nicht einfach einen entsprechenden script-Tag ein? Dann sparst Du Dir das Problem mit eval und zudem die Same-Domain-Policy.

das habe ich auch schon ausprobiert. Das Problem mit dem falschen Context wird dadurch auch gelöst, leider läuft die Abarbeitung des so eingebundenen Scriptes asynchron ab, so das die Objekte erst nach einer kurzen Wartezeit verfügbar sind. Das Testbeispiel würde so sogar funktionieren, aber wenn das eingebundene Script (ich benutze einen synchronen Request) länger wird, bei mir waren es etwa 10 kB, ist die eingebundene Funktion direkt nach dem Laden und evaluieren "undefined" und erst nach einem alert konnte ich sie aufrufen.

Vielleicht noch etwas mehr Hintergrund: Ich möchte Scripte erst bei Bedarf laden. Das mache ich folgendermaßen:

  
if (typeof(Methode)!="function") lade_und_evaluiere("script_mit_Methode.js);  
Methode();  

Dazu muss das Script bei Beendigung von lade... sofort verfügbar sein. Und da es mein Wunsch ist, die Scripte sowohl mit "<script src=..." als auch dynamisch einzubinden, kommt ein asynchroner Request mit anschließendem Erstellen eines script-Tags und Zuweisung über die text-Eigenschaft nicht in Frage. Denn hierbei würde ich eine Callback-Funktion benötigen und müsste die Programmlogik ändern.

Gruß, Jürgen