Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/06/2011, 10h58   #1
Invité de passage
 
Inscription : juin 2011
Messages : 8
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 8
Points : 2
Points : 2
Par défaut Fonction incompatible FF

Bonjour!
Je suis nouveau ici et j'ai un petit soucis.

Dans le cadre de mon stage, je dois "réparer" un site qui à ma plus grande surprise et mon plus grand dégout est fait entièrement en JS...

Mon prédécesseur a eu la bonne idée de faire tous ses liens en JS.

Voici la situation:

Le site est composé de 4 parties (une entête, un menu de gauche, un contenu avec au dessus une zone de titre). Et chacune de ces partie sont des frames contenues dans des frameset. OMG quoi!

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
<frameset cols="150px,*" frameborder="yes" border="0" framespacing="0">
	<frameset rows="210px,*" frameborder="no" border="0" framespacing="0">
		<frame id="framegauchehaute" SCROLLING="no" src="../structure/logo.html" NORESIZE>
		<frame id="framegauche" SCROLLING="no" src="../structure/table.html" NORESIZE>
	</frameset>
	<frameset rows="150px,60px,*" frameborder="no" border="2" framespacing="0">
		<frame id="framedroitehaute" SCROLLING="no" src="../structure/entete.html" NORESIZE>
		<frame id="framedroitemilieu" src="../structure/titrepresentation.html" NORESIZE>
		<frame id="framedroite" src="../structure/presentation.html" NORESIZE>
	</frameset>
</frameset>
Ensuite, dans le menu de gauche on trouve des liens dont l'action est en JS, , et cette action ne fonctionne pas sur FF. Chaque lien est sensé remplacer le contenu de la frame "framedroite" par une page html et celui de framedroitemilieu par son titre.

Voici la syntaxe d'un lien:

Code :
<a href="javascript:chgtframe('presentation')">Présentation</a>
Et voici la fonction chgtframe():

Code :
1
2
3
4
5
6
7
 
<script language="Javascript">
			function chgtframe(arg1) {
				parent.framedroite.location.replace("../structure/" + arg1 + ".html");
				parent.framedroitemilieu.location.replace("../structure/titre" + arg1 + ".html");
			}
		</script>
Voilà, le problème c'est que je n'y connait rien du tout en JS et que mon prédécesseur a vraiment fait n'importe quoi. Quelqu'un pourrait-il m'aiguiller?

Merci!
baneagle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 11h15   #2
Expert Confirmé
 
Avatar de javatwister
 
Homme
danseur
Inscription : août 2003
Messages : 2 667
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Calvados (Basse Normandie)

Informations professionnelles :
Activité : danseur

Informations forums :
Inscription : août 2003
Messages : 2 667
Points : 3 035
Points : 3 035
salut,

joyeux tavail auquel tu te colles, effectivement!

essaie déjà de remplacer la syntaxe des liens par:

Code :
<a href="#" onclick="chgtframe('presentation');return false">Présentation</a>
mais pas de garantie;
javatwister est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 11h23   #3
Invité de passage
 
Inscription : juin 2011
Messages : 8
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 8
Points : 2
Points : 2
Non effectivement j'y avais pensé. J'ai testé mais ca ne marche pas.
Si ca peut aider, normalement il y a un hover qui rend le texte orange et ce texte reste orange une fois la frame chargée.
Par contre cette méthode ne change rien sur IE, ca fonctionne très bien.

La en plus de ne pas charger la frame, il n'y a que le hover qui fonctionne. Bon c'est pas grand chose mais ca peut peut-être aider. ^^

Ha oui! Je viens de voir aussi que le # venait s'ajouter à table.html (qui contient les liens). Ce qui veut donc dire que ce n'est pas le conteneur principal qui est rechargé. Je suis sur la bonne voix?
baneagle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 12h04   #4
Expert Confirmé
 
Avatar de javatwister
 
Homme
danseur
Inscription : août 2003
Messages : 2 667
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Calvados (Basse Normandie)

Informations professionnelles :
Activité : danseur

Informations forums :
Inscription : août 2003
Messages : 2 667
Points : 3 035
Points : 3 035
en fait, comme je n'ai pas utilisé de frames depuis fort longemps, je ne suis même plus sûr des syntaxes d'appel; l'appel est-il reconnu par Fox?
__________________
On ne mord pas, on manifeste seulement notre tristesse face à des exposés de situations qui défient notre entendement binaire.
javatwister est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 15h47   #5
Membre Expert
 
Avatar de Eric2a
 
Homme Eric Garidacci
Inscription : septembre 2005
Messages : 1 057
Détails du profil
Informations personnelles :
Nom : Homme Eric Garidacci
Âge : 41

Informations forums :
Inscription : septembre 2005
Messages : 1 057
Points : 1 564
Points : 1 564
Salut,

Tente à nouveau après avoir nommé les cadres à l'aide de l'attribut name.

Exemple
Code :
1
2
<frame id="framedroitemilieu" name="framedroitemilieu" src="../structure/titrepresentation.html" NORESIZE>
<frame id="framedroite" name="framedroite" src="../structure/presentation.html" NORESIZE>
__________________

N'oubliez pas le vote des messages utiles ainsi que le Tag [Résolu].

Mon Site Web : Corse - Actualité, Météo, Vidéos, Logiciels, ...
Eric2a est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 16h47   #6
Invité de passage
 
Inscription : juin 2011
Messages : 8
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 8
Points : 2
Points : 2
Honnêtement, j'en sais rien du tout. Moi des frames j'en ai jamais utilisé et je ne compte pas m'y mettre. Résoudre ce problème me gonfle déjà suffisamment...
baneagle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 16h49   #7
Invité de passage
 
Inscription : juin 2011
Messages : 8
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 8
Points : 2
Points : 2
Citation:
Envoyé par Eric2a Voir le message
Salut,

Tente à nouveau après avoir nommé les cadres à l'aide de l'attribut name.

Exemple
Code :
1
2
<frame id="framedroitemilieu" name="framedroitemilieu" src="../structure/titrepresentation.html" NORESIZE>
<frame id="framedroite" name="framedroite" src="../structure/presentation.html" NORESIZE>
Je vais essayer mais ce m'étonnerait. J'ai déjà essayer. Par contre j'avais supprimé l'id en mettant un name. Donc je test et je vous redis ça.
baneagle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 16h52   #8
Invité de passage
 
Inscription : juin 2011
Messages : 8
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 8
Points : 2
Points : 2
Ho mon dieu ça marche! MDRRRRR La je suis explosé! Pour une fois que c'est FF qui chipote..
Il manquait aussi ca à l'ouverture de la balise script:
Code :
language="javascript" type="text/javascript"
Merci beaucoup, vous m'enlevez une énorme épine du pied.
baneagle est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h52.


 
 
 
 
Partenaires

Hébergement Web