Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1987 connectés 

 


Dernière réponse
Sujet : Petite question sur les liens portant sur des frames
gizmo :na:

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
gizmo :na:
kodamas Ils sont trop mignons à continuer à se prendre la tête ;)
gizmo non, non, il veut choisr quelle page afficher dans la frame 'contenu'.
gregxmax houais mais dans ce cas là tu ne specifie pas dans quelle frame tu veux afficher la page. hors Kodamas, si j'ai bien tout compris, il voulait aussi choisir dans quelles frames afficher la page. Hors dans ton cas c'est toujours dans la seconde.
gizmo joli :) mais alors pour faire ce que koda demande, y a moyen de simplifier.  
 
Si je ne me trompe, les adresse seraient du style
 
<a href="testframe.htm?p=txt.htm">
 
et le code deviendrait
 
<!-- frames -->
<script language="javascript">
function Recup()
{
var chm = window.location;
var vPage;
chm = chm.toString();
vPage = chm.indexOf("p=",0);
vPage = chm.substring(vPage+2,chm.length);
top.frames[1].location = vPage;
}
</script>
<frameset  cols="50%,*" onload="Recup()">
   <frame name="frame1" src="menu.htm" scrolling="auto" frameborder="0">
   <frame name="frame2" src="t2.htm" scrolling="auto" frameborder="0">
</frameset>
 
j'ai bon?
gregxmax Salut !
je sais pas si je vais apporter beaucoup d'eau au moulin, mais Zul a raison, c'est possible en javascript.
 
j'ai fait un petit exemple qui fonctionne sous Opéra 5.12 et IE.
 
Pour ceux que ça intéresse voici, le code
 
page A (accueil)
 
<html>
<head>
<title>envoie de parm via javascript</title>
</head>
<body>
<a href="testframe.htm?p=0|p2=txt.htm">affiche le lien dans la premiere frame</a>
<br>
<a href="testframe.htm?p=1|p2=txt.htm">affiche le lien dans la seconde frame</a>
</body>
</html>
 
Page B (contient deux frames)
 
<!-- frames -->
<script language="javascript">
function Recup()
{
var chm = window.location;
var vFrame;
var vPage;
chm = chm.toString();
vPage = chm.indexOf("p2=",0);
vPage = chm.substring(vPage+3,chm.length);
vFrame = chm.indexOf("p=",0);
vFrame = chm.substring(vFrame+2,vFrame+3);
vFrame = parseInt(vFrame);
top.frames[vFrame].location = vPage;
}
</script>
<frameset  cols="50%,*" onload="Recup()">
    <frame name="frame1" src="t1.htm" scrolling="auto" frameborder="0">
    <frame name="frame2" src="t2.htm" scrolling="auto" frameborder="0">
</frameset>
 
Selon le lien sur lequel on click, il affiche bien la page txt.htm (fichier de mon exemple), dans le cadre définie par lien de la page d'accueil.
 
voila, voila.
kodamas Grand merci au passage pour vos réponses à tous, je teste ça tout de suite ;)
kodamas Je préfère la méthode de gizmo. [:nofret]
gizmo zul>> pas convaincu par ta méthode mais si tu trouves a le faire complètement, je m'incline.
 
barbarella>> cours toujours [:nofret]
ZuL beuh........C posible en javascript...
ds ta frame tu appelles colles un truc du style
 
<a href="" onclick="go(tapage.htm)">tapage</a>
 
<script...>
var tapage="";
function go(page)
{
  tapage=page;
  document.parent.principal=acceuil.htm;
}
 
tu charges toujours la meme page ds ta frame
</script>
 
et sur ton acceuil.htm tu colles un truc du genre :  
 
this.location=document.parent.menu.form.tapage
 
en collant les variables ds des champs hidden tu peux te demerder
a++
barbarella Gizmo,
 
si t'as du temps j'ai plein de truc a te refiler :D
gizmo Voila, alors dans le fichier principal.php3 tu écris:
 

Code :
  1. <html>
  2. <head>
  3. </head>
  4. <frameset cols="15%,*" rows="*" border="0" framespacing="0" frameborder="NO">
  5.   <frame name="titre" scrolling="auto" src="menu.php3">
  6.   <frame name="contenu" scrolling="auto" src="<? echo $page ?>">
  7. </frameset>
  8. <noframe>
  9. <body>
  10. désolé cette page nécessite des frames
  11. </body>
  12. </noframe>
  13. </html>


 
c'est tout. Tu peux changer tout ce que tu veux dans les paramètres des frames, la seule chose importante, c'est ce qui ce trouve entre <? et ?>
 
Et dans ton fichier accueil.html, tu n'a qu'a appeler ta page comme ca:
 

Code :
  1. <a href="principal.php3?page=nom_de_page_1.htm">lien1</a>
  2. <a href="principal.php3?page=nom_de_page_2.htm">lien2</a>


 
en remplacant nom_de_page_x.htm par la page qui devra se trouver dans la frame contenu.

 

[edtdd]--Message édité par gizmo--[/edtdd]

Masta_Killah arf javais pas compris ta question, stupide de moi :)
vi c possible et la seul facon que je vois c en javascript.
Par contre faudra que tu me dises comment tu decide de quel page a affiche ds les frames, si c par lien ou par hasard ou par resolution .... si on click, si on est redirige, explike plus plz
kodamas

gizmo a écrit a écrit :

c'est pas dur, si tu acceptes le php, je te le fais demain, ca prend 15min.  




 
Je suis hébergé chez free donc je pense que ça passe.
 
Et merci.

Maxime parole de gizmo  :D
gizmo c'est pas dur, si tu acceptes le php, je te le fais demain, ca prend 15min.
kodamas Oula !
 
Bon ben bokou trop compliqué pour moa.
 
Je vais me débrouiller autrement; Merci ;)
gizmo bin via asp, cgi ou php ainsi tu apellera une page commune avec un paramètre (style principal.php?page=1) et en fonction de ce paramètre, il contruira la page de frame avec les pages désirées
kodamas

gizmo a écrit a écrit :

par javascript, c'est pas possible car il faudrait que la page de frame puisse récupérer des arguments passé par paramètres or le javascript ne le permet pas. il faut donc envisager une solution coté serveur.  




 
C'est à dire ?
 
J'y connais nada donc éclaire moi un peu. ;)

kodamas Je veux avoir la première page sans frame et envoyer vers une page avec 2 frames. Je vois pas l'intérêt de créer une page avec 3 frames. :??:  
 
E je pense pas pouvoir faire un lien <a href="principal.htm" <a href="exemple.htm" target="contenu"></a>>Lien</a>
gizmo par javascript, c'est pas possible car il faudrait que la page de frame puisse récupérer des arguments passé par paramètres or le javascript ne le permet pas. il faut donc envisager une solution coté serveur.
Masta_Killah bah c le meme principe, avec target="" ds les balises <a>
sinon tu cree une seul page avec les 3 frames, ca sera plus simple que davoir une page a 2 frames, et une autre avec encore 2 frames.
si t pas sur pour la page a 3 frames dis moi et je te le fait.
kodamas Merci quand même ;)
Maxime a oki je pige mieux , je sais pas comment faire dans ce cas ( surment par javascript )
kodamas Euh ... je crois qu'on s'est pas bien compris.
 
Disons que j'ai une page accueil.htm et une page principal.htm qui a 2 frames, "titre" et "contenu".
 
Je voudrais, de la page accueil.htm, envoyer vers principal.htm en choisissant la page qui sera affichée dans la frame "contenu".

 

[edtdd]--Message édité par Kodamas--[/edtdd]

Maxime oui avex latrribu target="x" dans tas balise <A>
kodamas Est-il possible de créer un lien sur une page A, vers une page B avec des frames  en spécifiant la page à afficher dans l'une des frames ?
 
Merci

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)