Problème de sous-menu ds menu déroulant

Fermé
Chocall - 23 févr. 2009 à 15:21
Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 - 24 févr. 2009 à 08:53
Bonjour,

Me revoilà :(

J'ai un souci un peu pénible. J'ai un menu déroulant en java. Jusqu'ici tout va bien.
Il ne déroule pas le sous-menu!!!

<dd id="smenu1" onmouseover="javascript:montre('smenu1');" onmouseout="javascript:montre('');">
<ul>
<li><a href="biography.html"><img src="images/images/biographie.gif" alt="" border="0" /></a></li>
<li><a href="#">Sous-Menu 1.2</a></li>
<li><a href="#">Sous-Menu 1.3</a></li>
<li><a href="#">Sous-Menu 1.4</a></li>
<li><a href="#">Sous-Menu 1.5</a></li>
<li><a href="#">Sous-Menu 1.6</a></li>
</ul>
</dd>
</dl>

ca devrait fonctionner mais ça n'apparait pas!

Quelqu'un aurait une idée, siouplé, les gens? Merci d'avance, j'ai envie de lancer mon pc :(
A voir également:

15 réponses

Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 132
24 févr. 2009 à 08:53
Je pense que ça ne fonctionne pas parce que tu as mis tes balises <dl> et <dt> en plein milieu d'un tableau...

Essaie de voir si tu ne peux pas les sortir de ton tableau ...
2
Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 132
23 févr. 2009 à 15:24
On peut voir ta fonction montre() stp?

Tu as un message d'erreur JavaScript?
0
ma fonction montre?
euh, elle est juste écrite au dessus, non? Ou alors je suis encore plus naze que je pensais! j'ai une css liée, aussi, ça pourrait venir de ça, tu crois? je te metys tout le code pour aller plus vite?
0
Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 132
23 févr. 2009 à 15:52
onmouseover="javascript:montre('smenu1');"
Ici tu fais appel à une fonction JavaScript.

Je pense que le problème vient de là.

Tu peux nous montrer cette fonction?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
j'ai honte.
je te copie tout le machin, comme ça... si j'ai merdé dedans...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans nom</title>
</head>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
//-->
</script>
</head>
<link rel="stylesheet" type="text/css" media="screen" href="texte.css" />
<body>
<table width="700" height="480" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="79"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="600" height="43"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr> </tr>
<tr>
<td height="24"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="100%"><div id="menu">
<dl>
<dt onmouseover="javascript:montre('smenu1');"><img src="images/images/news.gif" width="68" height="43" /></dt>

<dd id="smenu1" onmouseover="javascript:montre('smenu1');" onmouseout="javascript:montre('');">
<ul>
<li><a href="biography.html"><img src="images/images/biographie.gif" alt="" border="0" /></a></li>
<li><a href="#">Sous-Menu 1.2</a></li>
<li><a href="#">Sous-Menu 1.3</a></li>
<li><a href="#">Sous-Menu 1.4</a></li>
<li><a href="#">Sous-Menu 1.5</a></li>
<li><a href="#">Sous-Menu 1.6</a></li>
</ul>
</dd>
</dl>


<dl>
<dt onmouseover="javascript:montre('smenu2');"><img src="images/images/band.gif" width="68" height="43" /></dt>

<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="biography.html"><img src="images/images/biographie.gif" alt="" /></a></li>
<li><a href="#"><img src="images/images/members.gif" alt="" /></a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu3');"><img src="images/images/medias.gif" width="68" height="43" /></dt>
<dd id="smenu3" onmouseover="javascript:montre('smenu3');" onmouseout="javascript:montre('');">
<ul>

<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.2</a></li>
<li><a href="#">Sous-Menu 3.3</a></li>
<li><a href="#">Sous-Menu 3.4</a></li>
<li><a href="#">Sous-Menu 3.5</a></li>
</ul>
</dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu4');"><img src="images/images/tour.gif" width="68" height="43" /></dt>
<dd id="smenu4" onmouseover="javascript:montre('smenu4');" onmouseout="javascript:montre('');">
<ul>

<li><a href="#">Sous-Menu 4.1</a></li>
<li><a href="#">Sous-Menu 4.2</a></li>
<li><a href="#">Sous-Menu 4.3</a></li>
</ul>
</dd>
<dd onmouseover="javascript:montre('smenu4');" onmouseout="javascript:montre('');"> </dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu2');"> <img src="images/images/press.gif" width="68" height="43" /></dt>

<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="#">Sous-Menu 2.1</a></li>
<li><a href="#">Sous-Menu 2.2</a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu2');"><img src="images/images/pro.gif" width="68" height="43" /></dt>

<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="#">Sous-Menu 2.1</a></li>
<li><a href="#">Sous-Menu 2.2</a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu2');"><img src="images/images/extras.gif" width="68" height="43" /></dt>

<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="#">Sous-Menu 2.1</a></li>
<li><a href="#">Sous-Menu 2.2</a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl></td>
</tr>
</table></td>
</tr>

<tr>

</tr>

</table></td>
</tr>
</table></td>
</tr>
<tr>
<td height="421"><iframe allowtransparency="true" name="cible" src="news.htm" height="421" width="700" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>


et ma css :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans nom</title>
</head>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
//-->
</script>
</head>
<link rel="stylesheet" type="text/css" media="screen" href="texte.css" />
<body>
<table width="700" height="480" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="79"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="600" height="43"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr> </tr>
<tr>
<td height="24"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="100%"><div id="menu">
<dl>
<dt onmouseover="javascript:montre('smenu1');"><img src="images/images/news.gif" width="68" height="43" /></dt>

<dd id="smenu1" onmouseover="javascript:montre('smenu1');" onmouseout="javascript:montre('');">
<ul>
<li><a href="biography.html"><img src="images/images/biographie.gif" alt="" border="0" /></a></li>
<li><a href="#">Sous-Menu 1.2</a></li>
<li><a href="#">Sous-Menu 1.3</a></li>
<li><a href="#">Sous-Menu 1.4</a></li>
<li><a href="#">Sous-Menu 1.5</a></li>
<li><a href="#">Sous-Menu 1.6</a></li>
</ul>
</dd>
</dl>


<dl>
<dt onmouseover="javascript:montre('smenu2');"><img src="images/images/band.gif" width="68" height="43" /></dt>

<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="biography.html"><img src="images/images/biographie.gif" alt="" /></a></li>
<li><a href="#"><img src="images/images/members.gif" alt="" /></a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu3');"><img src="images/images/medias.gif" width="68" height="43" /></dt>
<dd id="smenu3" onmouseover="javascript:montre('smenu3');" onmouseout="javascript:montre('');">
<ul>

<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.2</a></li>
<li><a href="#">Sous-Menu 3.3</a></li>
<li><a href="#">Sous-Menu 3.4</a></li>
<li><a href="#">Sous-Menu 3.5</a></li>
</ul>
</dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu4');"><img src="images/images/tour.gif" width="68" height="43" /></dt>
<dd id="smenu4" onmouseover="javascript:montre('smenu4');" onmouseout="javascript:montre('');">
<ul>

<li><a href="#">Sous-Menu 4.1</a></li>
<li><a href="#">Sous-Menu 4.2</a></li>
<li><a href="#">Sous-Menu 4.3</a></li>
</ul>
</dd>
<dd onmouseover="javascript:montre('smenu4');" onmouseout="javascript:montre('');"> </dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu2');"> <img src="images/images/press.gif" width="68" height="43" /></dt>

<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="#">Sous-Menu 2.1</a></li>
<li><a href="#">Sous-Menu 2.2</a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu2');"><img src="images/images/pro.gif" width="68" height="43" /></dt>

<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="#">Sous-Menu 2.1</a></li>
<li><a href="#">Sous-Menu 2.2</a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl>

<dl>
<dt onmouseover="javascript:montre('smenu2');"><img src="images/images/extras.gif" width="68" height="43" /></dt>

<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="#">Sous-Menu 2.1</a></li>
<li><a href="#">Sous-Menu 2.2</a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl></td>
</tr>
</table></td>
</tr>

<tr>

</tr>

</table></td>
</tr>
</table></td>
</tr>
<tr>
<td height="421"><iframe allowtransparency="true" name="cible" src="news.htm" height="421" width="700" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>
0
Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 132
23 févr. 2009 à 16:23
Tu as copié deux fois la même chose non? ...
Ton CSS n'a rien à voir là dedans je pense.
C'est plutôt une histoire de JavaScript.

Ta page a été générée automatiquement apparement donc ce n'est pas très propre ...
Et ta fonction montre() n'existe pas ...
Donc c'est normal que ça ne fonctionne pas ^^

Donc essaie d'écrire ta fonction montre()
0
Oulà, j'ai fait un mauvais copicolcol. Sorry!

Oui elle est un peu bordel, c'est pas rangé comme il faut. Par contre, comment écrire ma fonction montre?
C'est à quel niveau comment etc?

MERCI PASSARINHOoooooOoooooooO!
0
Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 132
23 févr. 2009 à 17:22
C'est dans le head entre les balises script
Voilà une petite idée de comment devrait être ta fonction (non testé ^^ )

<script language="JavaScript" type="text/JavaScript">
<!--
montre (id) {
if ( id != "" ) {
document.getElementById('id').style.display = 'block';
} else {
document.getElementById('id').style.display = 'none';
}
//-->
</script>

Attention, ne remplace pas ce qu'il y a déjà entre les balises, c'est à mettre à la suite et toujours dans les même balises.
0
J'ai encore un message d'erreur javascript. Je crois que je vais péter un câble. :(

en tout cas, c'est très gentil à toi d'avoir tent"!!!!
0
Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 132
23 févr. 2009 à 17:57
C'est quoi ton message d'erreur JavasCript?
Tu l'as au lancement de la page ou juste quand tu passes la souris sur la case du tableau où tu veux afficher ton élément?
0
Il y a déjà un triangle d'attention en bas à gauche, par contre quand je vais sur mon objet, il y a "erreur sur la page" qui apparait en bas...
0
Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 132
24 févr. 2009 à 07:48
Normalement quand tu double cliques sur ce triangle jaune tu as une popup avec les détails des erreurs qui aparaissent.
Tu peux me dire quelles sont ces erreurs?
0
Alors erreur sur la page :

ligne 34
caractere 1
erreur '}' attendu
code 0

-il est à la ligne 33 le }, et quand il était à la 32, l'erreur indiquait 33...

quand à la seuxième forme d'erreur : ligne 68 objet attendu, et ça fait ça sur plusieurs lignes. Ptêt parce que je les ai pas encore liées aux pages concernées. Mais pourquoi ne déroule-t-il point?
0
Passarinho44 Messages postés 963 Date d'inscription mercredi 28 mai 2008 Statut Contributeur Dernière intervention 13 juin 2012 132
24 févr. 2009 à 08:18
Effectivement excuse moi jai très mal fait ma fonction Javascript

Remplace la par :

<script language="JavaScript" type="text/JavaScript">
<!--
function montre(id) {
if ( id != "" ) {
document.getElementById('id').style.display = 'block';
} else {
document.getElementById('id').style.display = 'none';
}
}
//-->
</script>

Et reteste.
0
Ca bouge pas. En clair, là, si je vire tous les sous-menus sur une rubrique, la rubrique fonctionne et m'affiche ma page. Cependant, horreur, elle ne m'afiche plus rien dans mon iframe de départ.

Pour un menu "déroulé", par contre, ça marche toujours pas. Alors je sais pas où j'ai merdé. Avant d'appliquer ce système déroulant, ma frame fonctionnait bien. Je vais péter un câble. :(
0