hi leute!
ich experimentiere zur zeit mit layer und divs als container für html-dateien.
dabei sind mir zwei relativ obskure fehlverhalten aufgefallen.
1. beim definieren eines ilayers für den nn (ilayer deshalb, damit ich ihn rfelativ zu einem objekt immer in der relativen mitte der seite positionieren kann), der über einen sich nicht in dem ilayer befindlichen link eine html-seite in den ilayer laden soll, zeigt der ilayer die zu ladende datei nicht an, sobald sich link und ilayer nicht (!) zusammen (!) in der ersten (!) tabellenzelle der html-seite befinden. erst wenn mann noch einmal auf den link klickt und anschließend
mindestens 1 mal die fenstergröße von hand ändert ( wenn nach dem ersten mal noch nicht, dann nochmal klicken und nochmal fenstergröße ändern),
zeigt er den ilayer korrekt an.
alekz also nicht dumm (idee stammte allerdings von henry---danke nochmal---), und steigt unter anderem aus crossbrowsertechnischen gründen auf den beiderseitig benutzten div-tag unter benutzung eines iframes als puffer um. gesagt, getan, funktioniert wunderbar. doch auch hier treten wiederum probleme bei der positionierung des div-bereiches in die relative mitte des browsers ein. bei der obigen lösung sollte dies über eine 100% x 100% große tabelle geschehen, da ich mehrere tabellenzellen benötigte, lag der layer nicht in der ersten zelle, ging also nicht.
nun, bei der div-variante sollte es über ein javascript geschehen, das durch "innerWidth"... die groesse des fensters ausließt und sie dann inklusive div halbiert bei onload und onresize. funktioniert auf den ersten blick beim nn (zum ie später mehr diesbezüglich), doch nicht... und hier schildere ich problem nr.2:
2. wird nun, unter verwendung des scriptes, das den div-bereich zentriert, eine externe html-datei in den div-bereich geladen, die ein embeded objekt (in meinem fall einen flashfilm) enthält, passieren echt eigenartige dinge im nn, sobald man das browserfenster verkleinert oder durch doppelklicken auf die titelleiste des browsers seine grösse ändert. der div-bereich verschiebt sich dann nicht in die aktuelle mitte des fensters, so wie es bei "normalen" in den div-bereich geladenen exteren html-dateien ohne flashfilme o.ä. passiert, sondern bleibt an seiner ursprünglichen position, oder verschwindet einfach, und nicht selten zeigt er die datei doppelt und dreifach auf der seite an.
also ist diese variante auch nicht zu verwenden, wenn es darum geht eine möglichkeit zu finden, den div-oder layerbereich in die mitte des fensters zu bringen.
abgesehen davon, fehlt mir auch die kenntnis einer möglichkeit, den besagten div-bereich beim ie in die relative mitte zu bekommen, da soviel wie ich weiss, der ie, nur die eigenschaft "screen.height/width" kennt. also die mitte nicht auf das fenster sondern auf den ganzen bildschirm bezieht.
kennt nebenbei jemand dafür eine lösung?
nach diesem ganzen hinundher werde ich mich nun wieder auf die erste variante konzentrieren: iframes für ie und nn 6 und opera,(den in die mitte zu bekommen ist denkbar einfach) und für die 4.x nn´s den layer, obwohl ich immer noch nicht weiß, wie ich den in die mitte bekomme ohne bugs. vielleicht kann mir da ja jemand weiterhelfen.
insgesammt ist die iframe-variante, abgesehen von einer php-lösung, für eine site, die ihren inhalt über ebenen anzeigt nach meiner meinung besser, als für jeden browser den divtag zu benutzen, auch wenn man damit zweigleisig fährt, man hat einen ganz entschiedenen vorteil: wenigstens im ie, im nn 6 und im opera, kann man mit den browsereigenen zurück-,vorwärts,-aktualisieren-buttons zwischen den im iframe nacheinander aufgerufenen seiten hinundher zappen.
wäre auch einmal interessant, ob man durch besondere zusätze via js auch zwischen den nacheinander aufgerufenen seiten im div-bereich zappen kann.
viel spass!
alekz
ps.: vielleicht fragt sich jemand, warum ich das alles hier so groß und breit ausführe...ich möchte nur allen, die ähnliches vorhaben, den ganzen ärger ersparen, oder ich werde korrigiert und man setzt meinem leiden ein ende.
ich experimentiere zur zeit mit layer und divs als container für html-dateien.
dabei sind mir zwei relativ obskure fehlverhalten aufgefallen.
1. beim definieren eines ilayers für den nn (ilayer deshalb, damit ich ihn rfelativ zu einem objekt immer in der relativen mitte der seite positionieren kann), der über einen sich nicht in dem ilayer befindlichen link eine html-seite in den ilayer laden soll, zeigt der ilayer die zu ladende datei nicht an, sobald sich link und ilayer nicht (!) zusammen (!) in der ersten (!) tabellenzelle der html-seite befinden. erst wenn mann noch einmal auf den link klickt und anschließend
mindestens 1 mal die fenstergröße von hand ändert ( wenn nach dem ersten mal noch nicht, dann nochmal klicken und nochmal fenstergröße ändern),
zeigt er den ilayer korrekt an.
alekz also nicht dumm (idee stammte allerdings von henry---danke nochmal---), und steigt unter anderem aus crossbrowsertechnischen gründen auf den beiderseitig benutzten div-tag unter benutzung eines iframes als puffer um. gesagt, getan, funktioniert wunderbar. doch auch hier treten wiederum probleme bei der positionierung des div-bereiches in die relative mitte des browsers ein. bei der obigen lösung sollte dies über eine 100% x 100% große tabelle geschehen, da ich mehrere tabellenzellen benötigte, lag der layer nicht in der ersten zelle, ging also nicht.
nun, bei der div-variante sollte es über ein javascript geschehen, das durch "innerWidth"... die groesse des fensters ausließt und sie dann inklusive div halbiert bei onload und onresize. funktioniert auf den ersten blick beim nn (zum ie später mehr diesbezüglich), doch nicht... und hier schildere ich problem nr.2:
2. wird nun, unter verwendung des scriptes, das den div-bereich zentriert, eine externe html-datei in den div-bereich geladen, die ein embeded objekt (in meinem fall einen flashfilm) enthält, passieren echt eigenartige dinge im nn, sobald man das browserfenster verkleinert oder durch doppelklicken auf die titelleiste des browsers seine grösse ändert. der div-bereich verschiebt sich dann nicht in die aktuelle mitte des fensters, so wie es bei "normalen" in den div-bereich geladenen exteren html-dateien ohne flashfilme o.ä. passiert, sondern bleibt an seiner ursprünglichen position, oder verschwindet einfach, und nicht selten zeigt er die datei doppelt und dreifach auf der seite an.
also ist diese variante auch nicht zu verwenden, wenn es darum geht eine möglichkeit zu finden, den div-oder layerbereich in die mitte des fensters zu bringen.
abgesehen davon, fehlt mir auch die kenntnis einer möglichkeit, den besagten div-bereich beim ie in die relative mitte zu bekommen, da soviel wie ich weiss, der ie, nur die eigenschaft "screen.height/width" kennt. also die mitte nicht auf das fenster sondern auf den ganzen bildschirm bezieht.
kennt nebenbei jemand dafür eine lösung?
nach diesem ganzen hinundher werde ich mich nun wieder auf die erste variante konzentrieren: iframes für ie und nn 6 und opera,(den in die mitte zu bekommen ist denkbar einfach) und für die 4.x nn´s den layer, obwohl ich immer noch nicht weiß, wie ich den in die mitte bekomme ohne bugs. vielleicht kann mir da ja jemand weiterhelfen.
insgesammt ist die iframe-variante, abgesehen von einer php-lösung, für eine site, die ihren inhalt über ebenen anzeigt nach meiner meinung besser, als für jeden browser den divtag zu benutzen, auch wenn man damit zweigleisig fährt, man hat einen ganz entschiedenen vorteil: wenigstens im ie, im nn 6 und im opera, kann man mit den browsereigenen zurück-,vorwärts,-aktualisieren-buttons zwischen den im iframe nacheinander aufgerufenen seiten hinundher zappen.
wäre auch einmal interessant, ob man durch besondere zusätze via js auch zwischen den nacheinander aufgerufenen seiten im div-bereich zappen kann.
viel spass!
alekz
ps.: vielleicht fragt sich jemand, warum ich das alles hier so groß und breit ausführe...ich möchte nur allen, die ähnliches vorhaben, den ganzen ärger ersparen, oder ich werde korrigiert und man setzt meinem leiden ein ende.