![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: Norbert Pfeiffer, 25. 03. 1999, 11:47
Ich will/muss ein frei positionierbares Objekt in der Mitte des Browserfensters
anordnen. Unter Netscape geht das problemlos mit
document.layers['JET'].top = (window.innerHeight / 2) - (hoehe / 2);
document.layers['JET'].left = (window.innerWidth / 2) - (breite / 2);
Trotz aufwendiger Suche habe ich jedoch keine Entsprechung fuer den IE 4.0
gefunden.
Frage:
- Ist eine Methode bekannt, wie man die verfuegbare Breite/Hoehe im IE
ermitteln kann?
Ueber eine hilfreiche Antwort waere ich sehr erfreut.
M. f. G. Norbert Pfeiffer
Die folgende Nachricht zum Thema stammt von: Cheatah, 25. 03. 1999, 13:25
Hi,
»» Ich will/muss ein frei positionierbares Objekt in der Mitte des Browserfensters
»» anordnen. Unter Netscape geht das problemlos mit
»» document.layers['JET'].top = (window.innerHeight / 2) - (hoehe / 2);
»» document.layers['JET'].left = (window.innerWidth / 2) - (breite / 2);
»» Trotz aufwendiger Suche habe ich jedoch keine Entsprechung fuer den IE 4.0
»» gefunden.
»» Frage:
»» - Ist eine Methode bekannt, wie man die verfuegbare Breite/Hoehe im IE
»» ermitteln kann?
mit dem MSIE kannst Du mittels
document.all.body.clientWidth bzw. clientHeight
die Breite und Höhe des aktuellen Fensters herausfinden. Du kannst auch ein parent bzw. top davorsetzen, um die Gesamtgröße herauszufinden, allerdings *nur* wenn die entsprechende Datei vom selben Server (Domain) ist wie die prüfende Datei.
Cheatah
Die folgende Nachricht zum Thema stammt von: Thomas Mell, 25. 03. 1999, 13:29
Hallo,
Beim IE funktioniert das Ermitteln der Fenstergröße auch mit window.inner....
Allerding kannst du dort die Layer-Geschichte vergessen, da dies nur beim NN funzt. Beim IE mußt du das mit CSS in verbindung mit dem .all und/oder .style Objekten bewerkstelligen. Nachlesen kannst du das alles bei SELFHTML.
Bis danndann
Thomas
Die folgende Nachricht zum Thema stammt von: Stefan Muenz, 25. 03. 1999, 14:17
Hallo Norbert,
»» Ich will/muss ein frei positionierbares Objekt in der Mitte des Browserfensters
»» anordnen. Unter Netscape geht das problemlos mit
Ja, aber Layer sind eben Netscape-proprietaer. Wenn Du fuer beide Brwoser arbeiten willst, musst du die positionierten Objekte gleich in HTML anders definieren, naemlich:
<div id="Bereichsname" style="position:absolute; top:???; left:???; width:???; height:???;">
...
</div>
dann kannst Du im Script notieren:
if(document.layers)
{
document.Bereichsname.[Eigenschaft/Methode Layerobjekt]
}
if(document.all)
{
document.all.Bereichsname.[Eigenschaft/Methode all-Objekt]
}
Relevante Seiten dazu in SELFHTML:
../../tecbba.htm (all-Objekt)
../../tecbbf.htm (Layerobjekt)
../../tfba.htm (Zugriff auf Objekte beim MSIE)
../../tfbe.htm (Zugriff auf Objekte bei Netscape)
../../tfca.htm (Cross-Browser-Beispiel)
viele Gruesse
Stefan Muenz
Die folgende Nachricht zum Thema stammt von: Norbert Pfeiffer, 26. 03. 1999, 00:03
Hallo Stefan,
das mit den Objekten war nicht mein Problem.
Die tauchen auf und verschwinden, wo, wann und wie ich es will ... ;-)
'Cheatah' sei Dank, nun auch in der Mitte des Browserfensters ...
Fuer NS:
document.layers['JET'].top = window.innerHeight / 2;
document.layers['JET'].left = window.innerWidth / 2;
Fuer IE:
document.all['JET'].style.pixelTop = document.body.clientHeight / 2;
document.all['JET'].style.pixelLeft = document.body.clientWidth / 2;
Das Objekt wurde so definiert:
<!-- ----------------------------------------- Start Objekt -->
<DIV ID='JET' style='POSITION:absolute; VISIBILITY:hidden; TOP:0px; LEFT:0px; WIDTH:37px; HEIGHT:19px;'>
<img src='_img/my-jet.gif' width=37 height=19 border=0>
</div>
<!-- ----------------------------------------- Ende Objekt -->
Natuerlich muss man es dann noch an der gefundenen Position auftauchen lassen:
Fuer NS:
document.layers['JET'].visibility = "show";
Fuer IE:
document.all['JET'].style.visibility = "visible";
Gruss Norbert
© 1998-2006
Impressum, Software: Classic Forum