bene: Alte Javascript Funktion speichern

Beitrag lesen

Hallo zusammen,

ich überschreibe per DOM Manipulation eine vorhandene Javascript Funktion. Damit diese Funktion aber nicht verloren geht, möchte ich die Referenz bzw. die Logik der Funktion vor dem Überschreiben speichern.

Als Test habe ich diese HTML-Datei erstellt:

<html>
<head>
<title></title>
<script text="text/javascript">

function start() {

/* Versuch eine Kopie/Referenz zu erstellen */
  var functionVar = function(bla) { test(bla); };

/* Aufruf der Referenz */
  functionVar('alt');

/* Hinzufügen des neuen Scripts */
  var javaScript   = document.createElement('script');
  javaScript.language = "JavaScript";
  javaScript.type  = "text/javascript";
  javaScript.text     = 'function test(bla) { alert('testneu: ' + bla); }';
  document.getElementsByTagName('head')[0].appendChild(javaScript);

/* Aufruf des neuen Scripts */
  test('neu');
  /* Aufruf der Referenz */
  functionVar('alt');
 }

function test(bla) {
  alert('testalt: ' + bla);
 }

</script>
<body onload="start()">
</body>
</html>

---

Funktioniert so noch nicht, hier wird wohl keine Kopie oder Referenz erstellt, sondern nur eine Funktion die einen Funktionsaufruf per Namen speichert. Da dies unabhänig von der Überschreibaktion geschieht, wird nur die aktuellste Version der Methode ausgeführt.

Hat jemand eine Idee wie man dieses Problem lösen könnte?

Gruß,
Bene