Code Javascript et Frames

Signaler
Messages postés
20
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
25 mai 2005
-
Messages postés
536
Date d'inscription
lundi 5 mai 2003
Statut
Membre
Dernière intervention
29 janvier 2009
-
J'ai encore un problème à la con...



Que je vous explique: Je développe un site totalement statique (pour des raisons techniques), et HTML/CSS/JavaScript.



Il est décomposé en deux sections:

¤ Une page de garde, composé d'une unique image cliquable, permettant de rendre rapidement dans différentes sections du site.

¤ Le site en lui même composé de 4 frames



Mon principal problème est que les liens de la page de garde
n'entrainent pas les meme contenus dans les frames (surtout les frames
de menu et corps).

A l'heure actuelle, je suis obligé de faire un fichier html pour chaque combinaison de frame que je veux ouvrir!!



Au début, je pensais faire quelque chose du style





<html>

<head> </head>

<frame>

...........

</frame>



<script> Script permettant de changer le lien
des frames en fonction de paramètres passés en GET</script>

</html>



Hors, dans une page permettant de disposer les frames, il est
impossible d'exécuter du code Javascript autre part que dans le head!!
Hors, je ne peux pas, mes frames ne sont pas encore crées!!!





........

Allez, on se calme... J'ai pas du être très clair là... Vous auriez pas une solution magique?



PS : vive Php et autres Asp...

7 réponses

Messages postés
536
Date d'inscription
lundi 5 mai 2003
Statut
Membre
Dernière intervention
29 janvier 2009
1
Salut !



Essay en créant ta fonction dans le head et tu l'apele onLoad du document (comme ca tes frames sont créées)







a+++
Messages postés
20
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
25 mai 2005

Hi,



Sauf erreur, dans le cas de frames, il n'y a pas de balise body...



Je vais tester...
Messages postés
20
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
25 mai 2005

Ca y est, je m'en suis sorti, certes par une ruse immonde, mais j'ai
l'impression que c'est monnaie courante dans ce monde de sauvages...



En gros, j'ai construit ma page d'accueil avec mes frames, mais d'une
largeur nulle pour la plupart, et quand l'utilisateur clique sur les
liens, j'ajuste la largeur de mes frames!!



Ce qui me donne une fonction du style:



function charger_page (menu, corps) {



// ajustement des lignes

parent.lignes.rows='83,*,30' ;



// ajustement des colonnes

parent.colonnes.cols='212,819' ;



// appel de la bande_sup

parent.bandeau.location.href = 'Frames/bandeau/bande_sup.html' ;



// appel de la bande infèrieure

parent.inf.location.href = 'Frames/inf/bande_inf.html' ;



// appel du menu

parent.menu.location.href = 'Frames/menus/'+ menu ;



// appel du corps

parent.corps.location.href = 'Frames/corps/'+ corps ;

}
Messages postés
536
Date d'inscription
lundi 5 mai 2003
Statut
Membre
Dernière intervention
29 janvier 2009
1
héhé ouep bien joué ! C pas bete du tout !
Messages postés
20
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
25 mai 2005

Enième correction...



Cette version pose de gros problèmes en cas de refresh. Les frames
reviennent à leur tailler initiale (=> plus de menus, c'est mort...).



Du coup, j'ai inversé, dans la page de base, les frames on la bonne
taille, par contre, dans la page html contenant l'image de la page de
garde, je réduis les frames au chargement:







Et là, plus de problèmes de refresh !!



Bon, allez, là, c'ets bon, on passe à la suite maintenant...
Messages postés
20
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
25 mai 2005

Ca marche pas sous Firefox !!!



Argggg!!!!!!!!!!!!!!!!!!!!!!!





Désolé, je suis un peu à cran aujourd'hui, faut pas faire gaffe...



Après test, Firefox, ne reconnait pas l'objet parent.lignes...

Il existe un moyen fiable d'acceder aux frames?
Messages postés
536
Date d'inscription
lundi 5 mai 2003
Statut
Membre
Dernière intervention
29 janvier 2009
1
ouep en utilisant

window.frames[];

window.frames[0] par ex !

a+++