1

[ATTENTION]désolé, toutes les urls ont été retirées car c'était sur mon serveur de DEV....


Voici mon pb :

je veux récuperer la taille "interne" de la fenetre (là où la page s'affiche quoi smile)

dans la théorie et l'exemple con, pas de pb, ca marche sous IE et FF :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>Dimension de la fenetre</title>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
<!--
function aff()
{
	var w = window.innerWidth  ? window.innerWidth  : document.body.clientWidth;
	var h = window.innerHeight ? window.innerHeight : document.body.clientHeight;

	document.getElementById('dimension').innerHTML = w+' x '+h;
}
-->
</script>
	</head>
	<body onResize="aff();" onLoad="aff();">
		<div id="dimension"></div>

	</body>
</html>


vous pouvez voir le résultat ici : http://[non_disponible]

seulement voilà, dans une application un peu plus poussée, ca foire sous ie...

voici l'exemple : http://[non_disponible]

le body a une couleur de fond bleu
dans ce body j'ai principalement une div avec une couleur de fond vert. cette div contient tout le contenu "réel".


je voudrais que cette div ait exactement la dimension de la fenetre, avec un overflow:auto, et pour ca je veux donc récuperer la dimension de ma fenetre dès qu'elle est redimensionnée pour redimensionner la div en conséquence. On devrait donc avoir à l'affichage uniquement du vert recouvrant le bleu qui du coup n'est pas visible.

sous FF : ca marche nikel
sous IE ; il prend bien la largeur, mais il me prend pour hauteur de la fenetre la hauteur du contenu et non du contenant...

voici les sources utiles :

JS : http://[non_disponible]
CSS : http://[non_disponible]

voilà, si quelqu'un a une idée...

mici happy
Ancien pseudo : lolo

2

//
// getPageSize()
// Returns array with page width, height and window width, height
// Core code from - quirksmode.org
// Edit for Firefox by pHaez
//

Layout.getPageSize = function (){
	
	var xScroll, yScroll;
	
	if (window.innerHeight && window.scrollMaxY) {	
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}
	
	var windowWidth, windowHeight;
	if (self.innerHeight) {	// all except Explorer
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}	
	
	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else { 
		pageHeight = yScroll;
	}

	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth){	
		pageWidth = windowWidth;
	} else {
		pageWidth = xScroll;
	}


	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
	return arrayPageSize;
}



c'est pas de moi.
Tout ce qui passe pas par le port 80, c'est de la triche.

3

Nikel, avec cette fonction ca marche !

bon, ben merci beaucoup ! J'ai mis à jour mon fichier JS avec cette fonction, pour ceux qui veulent voir le résultat...

par contre, j'enlèverais d'ici demain les urls, pour la meme raison que celle indiquée dans le premier post...
Ancien pseudo : lolo

4

5

c'est ca la programmation web smile faut y faire attention smile
Ancien pseudo : lolo

6

voila, j'ai retiré les liens, sujet clos
Ancien pseudo : lolo