Halihallo Forumer
Ich scheitere an Javascript :-(
Dauerschaden nicht auszuschliessen...
immer noch ;)
also, ich hab's mal geschafft, dass der Layer an der richtigen Position bleibt. Ich machte einen ilayer an der Position, wo der Text erscheinen soll und einen "normalen" layer irgendwo andert (eg. Ende des Doku). Dann ändere ich den Inhalt des Layers und verschiebe ihn über moveTo(pageX, pageY) an den Ort vom ilayer. Das funktioniert wunderbar.
Aber, als ich dann das ganze in die "Test-Umgebung" 1:1 eingefügt habe, hatte ich wieder Probleme:
Die JS-Scripts liegen im <head> - Bereich. Der Layer wie in der Test2 Umgebung ganz unten und der ilayer an der richtigen Stelle innerhalb einer <td>-Zelle (wo dann der Text ausgegeben werden soll). Aber nun? - Immer die JS-Fehlermeldung, dass der ilayer nicht existiert (ich spreche ihn über den name="" an). Also: ilayer=document.layers['ilayername'] funktioniert nicht, wenn der ilayer innerhalb der <td>...</td> steht, aber es _funktioniert_, wenn er am Dokumentanfang steht (wo er aber nicht zu stehen hat, da ich den Text nicht dort einfügen will).
Dann habe ich Testweise die namen ausgeben lassen:
alert(document.layers.length + ' layers in doc');
for ( i=0; i < document.layers.length; i++ ) {
alert(i + ': ' + document.layers[i].name );
}
Bei:
<td rowspan="8" width="100%" height="100%">
<ilayer name="ts"></ilayer>
<div name="shortExplain" id="shortExplain">
</div>
</td>
gibt er mir nur den "normalen Layer" aus und ein _js_layer_xxx. Wenn ich den <ilayer> ganz oben, nach <body> definiere gibt er mir drei aus:
den "normalen Layer", den ilayer _mit_ _richtigem_ _namen_ und ein weiterer _js_layer_xxx (was immer das sein mag).
Kann sich das jemand erklären? - Warum ist der ilayer, wenn er in <td> definiert ist (oder anderes Kriterium, weil er weiter unten im Doku steht? - Oder weil ihm das <div>-Probleme bereitet?), nicht existent?
Viele Grüsse
Philipp