Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Recuperation de la taille des frames d'une page sous MAC

5 réponses
Avatar
shura
Bonjour,

Pour une application, je dois laisser =E0 l'utilisateur la possibilit=E9
de redimensionner les frames d'une page. Bien sur, je dois stocker
cette disposition.

J'y arrive sous Firefox et IE en r=E9cup=E9rant la valeur de
"document.body.cols" et "document.body.rows".

Le probl=E8me c'est que certains utilisateurs sont sous MAC. Quand
j'affiche la valeur de "document.body.cols" ou "document.body.rows"
sous MAC, je r=E9cup=E8re syst=E9matiquement la valeur au chargement de la
page et non celle apr=E8s le redimensionnement de l'utilisateur.

Est-ce possible de r=E9cup=E9rer la valeur apres le redimensionnement ou
non ?
Si oui, comment ?

Merci de votre aide

5 réponses

Avatar
ASM
Bonjour,

Pour une application, je dois laisser à l'utilisateur la possibilité
de redimensionner les frames d'une page. Bien sur, je dois stocker
cette disposition.

J'y arrive sous Firefox et IE en récupérant la valeur de
"document.body.cols" et "document.body.rows".


je n'emploie pas çà d'où cela sort-il ?

Je récupère les dimensions comme ceci :
http://perso.wanadoo.fr/stephane.moriaux/truc/frames_taille/



--
Stephane Moriaux et son [moins] vieux Mac

Avatar
shura
en fait, quand tu définis un frameset en html de la manière suivante
:

<frameset cols="24%,76%">
<frame name="Arbo" src="url">
<frame name="browser" src="url">
</frameset>

En javascript, avec la commande "window.document.body.cols", tu
récupères "24%,76%".
De ce fait, si tu modifies la taille de tes frames, tu peux récupérer
la disposition "modifiée".

Mais ce code ne fonctionne pas sous MAC, car sous MAC meme si tu
redimensionnes ton frameset, tu récupèreras la valeur initiale
("24%,76%" dans notre exemple).

Je vais essayer avec ta méthode
Avatar
ASM
à qui parles-tu ?

de quoi parles-tu ?


--
Stephane Moriaux et son [moins] vieux Mac
Avatar
ASM
en fait, quand tu définis un frameset en html de la manière suivante
:

<frameset cols="24%,76%">
<frame name="Arbo" src="url">
<frame name="browser" src="url">
</frameset>

En javascript, avec la commande "window.document.body.cols", tu
récupères "24%,76%".


Je ne connaissais pas cette fonction
qui pourtant a l'air de fonctionner sur *MAC*
si j'en juge par ce qu'ils me montrent ici :
http://www.dynamicdrive.com/dynamicindex8/collapseframe_dev.htm

J'aimerais assez qu'on ne dise pas MAC mais Mac

J'aimerais assez qu'on ne dise pas çà ne fonctionne pas sur MAC
quand on veut dire çà ne fonctionne pas comme sur IE Windows


Mais ce code ne fonctionne pas sous MAC, car sous MAC meme si tu
redimensionnes ton frameset, tu récupèreras la valeur initiale
("24%,76%" dans notre exemple).


comme tu ne donnes pas *ta* méthode,
ni sur quel navigateur tu te bases pour établir ton jugement
difficile de juger de sa pertinence



--
Stephane Moriaux et son [moins] vieux Mac

Avatar
shura
Ok, je me suis peut-etre mal exprimé.

Je ne veux pas dire que la commande "document.body.cols" ne fonctionne
pas mais elle me retourne systématiquement la valeur initiale de mon
frameset.

Voici un exemple :
fichier test.html :
<html>
<frameset cols="30%,70%">
<frame src="page1.html">
<frame src="page1.html">
</frameset>
</html>
fichier page1.html :
<html>
<body>
<a href="javascript:alert(parent.document.body.cols)">Test</a>
</body>
</html>

En cliquant sur le lien "Test", cela me retourne systématiquement
"30%,70%" sous Mac (Safari et Netscape) alors que sur PC (Mozilla et
IE) je récupère bien la valeur de mon frameset apres
redimensionnement.

J'espere que c'est plus clair maintenant.