Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [js]wysokość okna
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
mick
Może ktoś wie, jak ściągnąć wysokość okienka, a dokladniej obszaru roboczego przeglądarki, tzn. jeśli mamy rozdzielczosć 1024*768 to jest to okolo 600px.

Szukalem ale nie doszukalem sie. Pewnie już bylo sad.gif
Seth
Paul: pls napisz jeszce raz posta bo przz przypadek wylecial winksmiley.jpg
Paul
Kod
<html>

<head>

<script type="text/javascript">

function wymiary_okna(){

wys  = document.all.wymiary.style.pixelTop; // wysokosc obszaru roboczego okna

szer = document.all.wymiary.style.pixelLeft; // szerokosc

}

</script>

</head>

<body onload="wymiary_okna();">

<a  style="position: absolute; top: 100%; left: 100%;" id="wymiary">

</a>

</body>

</html>


Sprobuj cos z tego wykombinowac... Troche to dziwne... ale window.outerHeight, inner, wariuje i zwraca undefined - nie zdefiniowana...

Seth: juz wlecial spowrotem smile.gif
mick
Wielkie dzięki, działa ok. biggrin.gif
Teodor
Witam
Cytat
Kod
<html>

<head>

<script type="text/javascript">

function wymiary_okna(){

wys  = document.all.wymiary.style.pixelTop; // wysokosc obszaru roboczego okna

szer = document.all.wymiary.style.pixelLeft; // szerokosc

}

</script>

</head>

<body onload="wymiary_okna();">

<a  style="position: absolute; top: 100%; left: 100%;" id="wymiary">

</a>

</body>

</html>

Powyzsza metoda jest po 1 obslugiwana TYLKO przez IE a po 2 troche bez sensu...(wstawianie obiektu i wg niego obliczanie wys i szer ?!?)

Wg specyfikacji za szerokosc i wysokosc okna roboczego odpowiadaja innerWidth i innerHeight - ktorych niestety IE nie rozumie.
Ponizszy "trick" zadziala w kazdej przegladarce:
[xml:1:c20420e142]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<script type="text/javascript">
//<![CDATA[
d=document;
if (typeof window.innerWidth!='undefined') {
var winWidth = window.innerWidth;
var winHeight = window.innerHeight;
} else {
if (d.documentElement && typeof d.documentElement.clientWidth!='undefined' && d.documentElement.clientWidth!=0) {
var winWidth = d.documentElement.clientWidth
var winHeight = d.documentElement.clientHeight
} else {
if (d.body && typeof d.body.clientWidth!='undefined') {
var winWidth = d.body.clientWidth
var winHeight = d.body.clientHeight
}
}
}
//]]>
</script>
</head>
<body>
</body>
</html>[/xml:1:c20420e142]

wysokosc okna to: winHeight a szerokosc to: winWidth.

Pozdrawiam
Paul
Cytat
Powyzsza metoda jest po 1 obslugiwana TYLKO przez IE a po 2 troche bez sensu...(wstawianie obiektu i wg niego obliczanie wys i szer ?!?)

Probowalem cos sam wykombinowac (pozatym w pajaczku pisze outerHeight >= JS1.2 dlatego tak kombinowalem...), a nie sciagac tongue.gif i kochany IE zmusil mnie do tego kombinatorstwa ;P. Wlasnie testowalem na mozilli i nie dziala... mogli by to jakos sunifikowac smile.gif...
mick
THX Teodor. Sporo mi to pomoglo, choc caly skrypt nie bardzo dziala - zaden z warunkow nie jest spelniony 8O . W kazdym razie juz sobie poradze.
dexter007
Witam!
Na początku chciałem przeprosić, że odświeżam temat z przed tylu lat, ale mój problem jest identyczny, więc uważam, że nie ma sensu zakładać nowego.

Szukałem kodu, który pozwoli mi uzyskać wysokość obszaru roboczego. Trafiłem na ten temat i na kod, który podał Teodor.
Niestety, nie działa on w IE. Sprawdziłem każdą z możliwości i wyniki wyglądają tak:

window.innerHeight - FF: 832 (prawidłowa), IE: undefined
d.documentElement.clientHeight - FF: 0, IE: 0
d.body.clientHeight - FF: undefined, IE: undefined

IE w żadnej kombinacji nie zwraca prawidłowego wyniku.
W jaki sposób zbadać wysokość obszaru roboczego w tej pseudo-przeglądarce ?
PaFaT
W IE można wpisać następujący kod:

var wysokosc = Math.max(parseInt(document.documentElement.clientHeight), parseInt(document.documentElement.scrollHeight);
var szerokosc = Math.max(parseInt(document.documentElement.clientWidth), parseInt(document.documentElement.scrollWidth);

Powinno zadziałać...
celbarowicz
Książka js Karol Wierzchołowski-samouczek

availHeight ->max dostępna wysokość

availWidth ->

height ->wysokość ekranu

width ->

document.write("<a:vailHeight:</b>"+screen.availHeight+"<br/>");
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.