Plaatje aanpassen aan de grootte van het window

Hier wordt behandeld hoe je je website kunt laten reageren op de beschikbare afmetingen van het window waarin je pagina wordt getoond. Dat wordt gedaan aan de hand van een voorbeeld: Als je onderstaande knop aanklikt verschijnt een nieuw venster met daarin een plaatje. Als je dit venster groter of kleiner maakt, verandert de grootte van het plaatje mee.

De code staat onderaan deze pagina. Je kunt hem ook downloaden, inclusief het plaatje.

Gebruik:

De code ziet er als volgt uit:
 
(Neem het volgende attribuut op in de BODY-tag)

onresize="self.location.reload()"
 
(Zet dit JavaScript in de <BODY> op de plaats waar het plaatje moet komen)
<script>
<!--
// Map de omvang van het plaatje op de beschikbare grootte van het scherm.
// De kleinste afmeting van het window is bepalend!
 
// (c) Ben Boukes, 2003. Mag vrij worden gebruikt.
// Werkt met Internet Explorer 4+, NetScape 4+ en Opera 7+
 
var p = 'hoezo-17.gif'; // Bestand met het plaatje
var w = 376; // Breedte van het plaatje
var h = 440; // Hoogte van het plaatje
var f = 0.80; // Bruikbaar gedeelte: Hier is dat 80% van de beschikbare hoogte en breedte van het document
 
/*----------- Hieronder niets wijzigen ----------- */
if(window.innerWidth) { // NetScape of Opera
  h = Math.floor(f*window.innerHeight);
  w = Math.floor(f*window.innerWidth);
} else if (document.body.clientWidth) { // IE
  h = Math.floor(f*document.body.clientHeight);
  w = Math.floor(f*document.body.clientWidth);
}
document.write('<img src="',p,'" border="0" alt="Resize dit window!" vspace="10" hspace="10" ');
if (w < h) document.write('width="',w,'">');
else document.write('height="',h,'">');
// einde van dit script -->
</script>

Downloaden:
 
Druk op de knop: Download deze code  File: voorb095.zip, 14 223 bytes.

Opmerking:
 
Dit script werkt met de beschikbare ruimte binnen een (browser-)window. Het gaat dus over de relatie tussen een window en een web-pagina. Het is niet geschikt om de grootte van een window op het beeldscherm te kiezen. Zie daarvoor het item "Het object 'Screen' gebruiken".
 
Een modernere methode is te vinden in het item Plaatje aanpassen aan de grootte van het window II: Aanpak met CSS.

 
terug

html-095; Laatste wijziging: 27 juni 2027