3 petites fonctions pour gerer vos frame frames

Soyez le premier à donner votre avis sur cette source.

Snippet vu 14 750 fois - Téléchargée 28 fois

Contenu du snippet

Afficher / Cacher une FRAME avec tempo possible, récup la taille d'une FRAME et Définir la taille d'une FRAME IE, Mozilla,... compatible

Source / Exemple :


// 4 Fonctions (dont 1 ne sert qu'à la 1ere) pour gérer la taille de ses frames
// fonction FrameModif(frame) (utile pour faire un bouton cache / affiche frame jumelle)
//		où frame doit être à 0 ou à 1 selon qu'on appelle la fonction de la frame de gauche ou de droite
// 		Met à 0 la taille de la fenètre jumelle ou à screen.width selon qu'on l'appelle de la frame gauche ou droite
//		Et la remet à son état initial si on rappelle la fonctions 
// fonction FrameSize(taille) met la frame de gauche à (taille) pixels.
// fonction FrameGetSize() retourne la taille de la frame de gauche en pixel

// Fonctions libres de tout droit crée par PiedPierre compatible IE et mozilla

//wcol=FrameGetSize();// ca c'est pour avoir la taille de la frame au départ mais il semblerait que wcol soit globale tout de meme;
vit=(screen.width)/6;// ici on paramètre la vitesse de scroll en pixel.
function FrameModif(frame){
 w=FrameGetSize();vit2=vit;if(w!=0 && w!=screen.width){wcol=w;col=wcol-1;}else{col=wcol;}//col=eval(wcol);document.write(col);
 if(frame==0){if(w<screen.width){w=col;vit2=-vit2;}} // on agrandit ou on reduit
 else if(frame==1){if(w>col){w=col;}else{vit2=-vit2;}}else{document.write("Erreur FrameModif() n'accepte que 0 ou 1 comme argument");return false;}
 moFrame(w,col,frame,vit2);return w;}
function moFrame(w,col,frame,vit2){
 w=w-vit2;if(w<col && frame==0 || w>col && frame==1){w=col;}
 if(w>screen.width){w=screen.width;}else if(w<0){w=0;}
 window.parent.document.body.cols=w+",*";if(w>=screen.width || w==col || w<=0){return;}
 setTimeout("moFrame("+w+","+col+","+frame+","+vit2+")",0)}
function FrameSize(taille){window.parent.document.body.cols=taille+",*";return true;}
function FrameGetSize(){wp=window.parent.document.body.cols;po=wp.indexOf(",");w=wp.substr(0,po);return w;}

Conclusion :


On peut par exemple créer un bouton sur lequel en cliquant on masque ou affiche la frame jumelle :
<a href='#'onClick='FrameModif(1);'><img src='base2.gif'></a>

A voir également

Ajouter un commentaire

Commentaires

cs_pipouz
Messages postés
56
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
27 septembre 2008
-
vieux script , c bete , c'est ce que je cherche....
gaffe_82
Messages postés
4
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
10 avril 2006
-
Bonjour,
j'ai essayé ton exemple, je n'arrive pas à la faire marcher moi non plus.
Qqun sait où est le problème ?
Bonne journée !
ziconez
Messages postés
3
Date d'inscription
mardi 4 avril 2006
Statut
Membre
Dernière intervention
5 mai 2006
-
piedpierre
Ton script m'interrese beaucoup, mais j'ai beau essayer ton exemple, je n'arrive pas à le faire marcher.

Voilà, j'ai trois frames verticales et j'aimerai faire un effet de rideau avec les deux frames droite et gauche à l'aide d'un bouton afin d'agrandir la frame centrale. Tu dis qu'il faut copier le script dans centrale.html. j'ai essayé en mettant un bouton et le script dans les trois fenetre et cela m'envoie une insulte du genre erreur (inconnue) sur la page.
piedpierre
Messages postés
29
Date d'inscription
jeudi 29 avril 2004
Statut
Membre
Dernière intervention
20 février 2007
-
d'abord on crée un jeux de cadres :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans nom</title>
</head>

<frameset rows="80,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="/top.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
<frameset cols="80,*" frameborder="no" border="0" framespacing="0">
<frame src="gauche.html" name="leftFrame" scrolling="No" noresize="noresize" id="leftFrame" title="leftFrame" />
<frame src="centrale.html" name="mainFrame" id="mainFrame" title="mainFrame" />
</frameset>
</frameset>
<noframes>

</noframes></html>
Ensuite 3 fichier html : top.html, gauche.html, centrale.html qui vont se loger dans les cadres, tu met le script ci dessus dans centrale.html <head><script type="text/javascript" language="javascript">
// Ici le script
</script></head>
cs_Med307
Messages postés
2
Date d'inscription
lundi 5 décembre 2005
Statut
Membre
Dernière intervention
5 décembre 2005
-
Je comprends pas trop où placer ce morceau de script, de plus il me semble que certaines parties sont incorrectes à cause des commentaires mais je suis pas sûr. Pourriez vous donner plus de précisions voire meme un fichier source car ce script à l'air très utile.Merci!

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.