Hallo,
Ich könnte nun versuchen dieses Scriptelement zu finden und zu löschen, aber sind damit die Funktionen und globalen Variablen weg?
Natürlich nicht. Das hat nichts miteinander zu tun. Es ist nicht entscheidend, wie ein Script geladen wurde. Wenn es beim Ausführen das Objektsystem ändert, kann das nicht durch das Löschen des zugehörigen script-Elements rückgägngig gemacht werden.
Oder sind gar all meine Befürchtungen unbegründet und Browser unterscheiden brav welche Funktion aus welchem Script stammt und welche Variable wie angesprochen wird? Sie könnten auch unbegründet sein weil ich alle globalen Variablen und alle Funktionen und Objekte überschreibe nur…
Wenn du alles sauber überschreibst, dann werden Identifier zu deinen neuen Objekten aufgelöst. Allerdings gibt es noch z.B. Event-Handler, die die alten Funktionen referenzieren. Diese Referenzen gehen nicht über den Namen, d.h. sie ändern sich nicht, wenn du den Namen überschreibst. Da musst du schon den vorherigen Event-Handler entfernen und deinen neuen hinzufügen.
Das Originalscript kannst du wahrscheinlich nicht ändern, oder? Wenn man dieses sinnvoll kapselt und die Möglichkeit des Entladens einbaut, hättest du die Probleme gar nicht. Eigentlich sollte man alle Scripte heutzutage so aufbauen.
Mathias