Hallo
ich habe es nun mit load probiert und wieder online gestellt. es geht immer noch nicht. kann es sein, dass die refernzierung auf den mainlayer net stimmt?
Ursache gefunden. Der doppelte Layerwechsel war es. Erst muß ein Layer fertig geladen sein, bevor der nächste geladen werden darf. Sonst geht der Aufruf ins Leere.
Ich habe deine Funktions so abgeändert:
function change(page,was){
if (was==1) {document.head.load(urlh,366);
urlh=void(0);
return;
}
urlh = "?a=5&p=" + page;
urlm = "?a=4&p=" + page;
document.elCont.document.elMain.load(urlm,366);
}
und im Layer
<layer name="elMain" src="?a=4&p=home" onload="if (window.urlh) change('',1);initScroll()" top="0"
left="0" width="382" clip="366,245"></layer>
Zuerst wird der Hauptlayer geändert. Mit dem Aufruf der Funktion wird die Variable urlh angelegt. Greift bei dem Hauptlayer dann der onload-Event, prüft er zuerst ob die Variabele window.urlh existiert.
Tritt der Fall ein, dann ruft er die Funktion change() erneut - diesmal mit Parameter auf. Die ändert den Kopflayer, setzt die Variable urlh auf undefined und bricht anschließend die Funktion ab.
Natürlich geht es auch umgekehrt :-), dann muß eben die Reihenfolge geändert werden.
Viele Grüße
Antje