Bonjour à vous,
Tout d'abord, j'ai mis ce sujet dans cette catégorie, mais si il doit être déplacé n'hésitez pas.
J'ai développé un petit menu déroulant, comme on peut en trouver beaucoup sur internet. Quand on clique sur un menu, il s'ouvre et laisse apparaitre les sous-menu.
Code Javascript :
$(document).ready( function () {
// On cache les sous-menus :
$(".navigation ul.subMenu").hide();
// On sélectionne tous les items de liste portant la classe "toggleSubMenu"
// On modifie l'évènement "click" sur les liens dans les items de liste
// qui portent la classe "toggleSubMenu" :
$(".navigation li.toggleSubMenu > a").click(
function () {
// Si le sous-menu était déjà ouvert, on le referme :
if ($(this).next("ul.subMenu:visible").length != 0) {
$(this).next("ul.subMenu").slideUp("normal");
}
// Si le sous-menu est caché, on ferme les autres et on l'affiche :
else {
$(".navigation ul.subMenu").slideUp("normal");
$(this).next("ul.subMenu").slideDown("normal");
}
// On empêche le navigateur de suivre le lien :
return false;
}
);
});
Je l'ai développé en testant sous Firefox, et pas de soucis. Mais dès que j'ai voulu le tester sous IE, je me suis retrouvé avec un décalage.
J'ai pas mal cherché, mais rien trouvé de concluant.
Je pense d'après mes recherches, que c'est un pblm de syntaxe qui ne gêne pas sous FF mais gênante sous IE.
Si vous avez une idée, merci d'avance.
Ci-dessous le menu sous firefox:
Sous Internet Explorer:
