Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
js, frame, creation site...
Envoyé par: marm

Bonsoir,

Je ne sais si je trouverais reponse ici, mais j'essaye qd meme, au cas ou...

J'ai un soucis sur mon site, liée à l'utilisation des frames (je sais, beaucoup d'entre vous vont me dire 'les frames c'est nul, vaut mieux les css ou je ne sais quoi d'autre'.
Il n'empeche que j'ai tout créé avec frame. le site marche très bien comme ca, si compté que la personne qui y entre passe par la page d'accueil.

Je m'explique :
- si on entre par 'mon_site.htm' alors les pages se chargent sans probleme comme je le souhaite.
- l'une de mes pages, nommée 'parent.htm' contient une frame, dans lequel s'affichent les pages 'frame1.htm', 'frame2.htm',... 'frame100.htm' selon les liens définis dans les 'frame' entre elles ou selon le lien de la page 'parent.htm'.
Par defaut, lorsque l'on arrive sur 'parent.htm', c'est bien sûr 'frame1.htm' qui s'affiche.
Dans cette situation tout marche tres bien.

Le problème :
supposons que google ou autre reference l'une de mes pages 'frame', ou que je tape directement le lien 'frame13.htm', alors dans ce cas :
- soit sans ajout de script, 'frame13' va s'afficher en pleine page.
- soit avec ajout du script donc je vous copie les lignes ci dessous, 'frame13' se charge, et une fois totalement chargée, c'est 'parent.htm' qui la remplace accompagnée de 'frame1.htm' (frame par defaut).

copie des scripts essayés:
---
<SCRIPT Language="javascript">
if (parent.frames.length==0)parent.location.href="parent.htm"
</SCRIPT>
---
ou
---
entre les balises <head> et </head> de chaque frame :
<script language="javascript">
<!--function presence_frame()
{if(!(parent.frames["votreframe1"] && parent.frames["votreframe2"] && parent.frames["votreframe3"]))
{location.replace("votrepageprincipale.html");
}
}
</script>


dans la balise <body> de chaque page de votre site (sauf la page parent.htm).
<body onload="presence_frame();">
---

Quelqu'un pourrait il m'aider?
Vous aurez compris que je chercher à charger les différentes frames dans leur fenetre parente quelque soit la facon dont on arrive dessus!

Merci d'avance à tous!

Poste le Thursday 31 March 2005 19:37:38
Répondre     Citer    
Re: js, frame, creation site...
Envoyé par: 1000k

Réponse sûrement à côté de la plaque, mais une balise <meta name="robots" content="noindex" /> ne suffirait-elle pas à ce que tes pages ne soient pas indexées par Google ? (ou tu peux aussi configurer ça dans le robots.txt)

N'empêche que bannir les frames et utiliser les css c'est mieux à presque tous points de vue :-p

Poste le Friday 1 April 2005 00:12:40
Répondre     Citer    
Re: js, frame, creation site...
Envoyé par: Morgan

Citation
1000k
N'empêche que bannir les frames et utiliser les css c'est mieux à presque tous points de vue

et il me semble bien que que ce soit le seule solution propre pour empécher le problème décrit ... :-/

___________________________________________________
L'interface chaise-clavier se débuggue elle aussi...

Poste le Friday 1 April 2005 12:39:59
Répondre     Citer    
Re: js, frame, creation site...
Envoyé par: p-s

Hello,

Allé, une couche comme quoi il faut éviter les frames, mais dans certain cas il n'y a pas mieux et si tu ne veux pas en changer, on ne va pas te forcer ;-).

Sinon en ce qui concerne ton pb d'identification je pense que tu es sur la bonne voie. En tout, j'utiliserai un javascript comme toi.
Dans l'esprit je ferais ça (je ne garantie rien, faudra faire des essais) :
dans parent.htm on définit une variable globale genre var bigBrother="ok";
ensuite en utilisant ta fonction présence_frame() dedans tu vérifie que parent.bigBrother=="ok" et en fonction tu charges parent.htm ou pas.
Tu peux aussi utiliser des booléens, reste plus qu'à tester l'existence.

Voilà, en espérant que cela pourra t'aider.

Sinon, au cas où tu ne connaîtrais pas ce site, pour ce genre de pb il y a [www.toujavascript.com] . Le site est très bien fait et le forum réactif.

steph

Poste le Friday 1 April 2005 17:07:01
Répondre     Citer    
Re: js, frame, creation site...
Envoyé par: p-s

Zut!

j'ai mal tapé l'adresse de toutjavascript. C'est donc [www.toutjavascript.com] .

steph

Poste le Friday 1 April 2005 17:10:45
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
js, frame, creation site...
Posez dans ce forum les questions qui ne trouvent pas place dans les autres...

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons