Hello out there!
Meine Befürchtung ist nun, dass der Browser damit durcheinander kommt und nur einer der beiden Blöcke beim onload auch wirklich ausgeführt wird (z.B. der letzte Block).
Das ist so. Wenn du schreibst
<script type="text/javascript">
[code lang=javascript]window.onload = foo;
</script>
<script type="text/javascript">
window.onload = bar;
</script>[/code]
ist das dasselbe wie
<script type="text/javascript">
[code lang=javascript]window.onload = foo;
window.onload = bar;
</script>[/code]
Die zweite Zuweisung überschreibt die erste. Dasselbe gilt für
<script type="text/javascript">
[code lang=javascript]window.onload = function () { foo(); };
window.onload = function () { bar(); };
</script>[/code]
Deine 'onload'-Funktion müsste so aussehen:
<script type="text/javascript">
[code lang=javascript]window.onload = function ()
{
foo();
bar();
};
</script>[/code]
Da die Seiten dynamisch generiert werden ist es mir leider auch nicht möglich alle Anweisungen in einen window.onload-Block zusammenzufassen.
Du kannst durchaus einen window.onload-Block, einen foo-Block und einen bar-Block haben; die Definitionen der Funktionen foo(), bar() kann auch in anderen 'script'-Elementen stehen (die bei dir dynamisch erzeugt werden).
Wenn du nicht weißt, ob sie überhaupt erzeugt werden bzw. wenn das bei verschiedenen deiner Webseiten anders ist, vor dem Aufruf abfragen, ob die Funktionen existieren:
<script type="text/javascript">
[code lang=javascript]window.onload = function ()
{
if (window.foo) foo();
if (window.bar) bar();
};
</script>[/code]
See ya up the road,
Gunnar
„Und [dieses Forum] soll […] auch ein Fachforum bleiben und kein Psychologieforum werden.“ (Kirsten Evers)