Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1425 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [debutantJS]petit bug JS facilement identifiable

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[debutantJS]petit bug JS facilement identifiable

n°1116883
mphilamp
ForwWweever!
Posté le 11-06-2005 à 22:22:14  profilanswer
 

voilà j'ai voulu modifier un script JS gerant les actions sur un menu deroulant stucturé par CSS
j'ai voulu l' ameliorer pour y ajouter quelques fonctionnalités
je m'explique:
d'origine le script permet:
-de cacher tous les sousmenus a l'affichage complet de la page
-par clik sur un item,que son sous menu s'affiche et que les autres sous menu ayant été ouverts sont fermés
 
l'objet de cette amelioration est la suivante:
-lorsqu'on clik sur un item, son sous menu s'affiche et les autres sous menus qui ont pu étre ouverts avant sont fermés, or il est particulierement desagreable qu'un sous menu se ferme lorsqu'il est situé au dessus d'un item cliké et qu'il décale ainsi tout le menu vers le haut
 
ALORS, l'idée est de ne fermer que les sous menu situés en dessous de l'item cliké  
donc voici le code:
edit:JE CROIS QUE G RESOLU MON BLEM ... a voir... update iminente...
edit2: en fait non , je reposte le script original:

Code :
  1. <script type="text/javascript">
  2.  window.onload=hideOnLoad;
  3.  function hideOnLoad(){
  4.  for (var i = 1 ; i <= 3 ; i++) {
  5.    document.getElementById('smenu'+i).style.display='none';
  6.    }
  7.  }
  8.  function display(id) {
  9.   var d = document.getElementById(id);
  10.   if (d.style.display != 'none') {
  11.    d.style.display = 'none';
  12.   }
  13.   else {
  14.    for (var i = 1 ; i <= 3 ; i++) {
  15.    document.getElementById('smenu'+i).style.display='none';
  16.    }
  17.   d.style.display = '';
  18.   }
  19.  }
  20.  </script>


 
edit: cette fois c bon !!!

Code :
  1. <script type="text/javascript">
  2.  window.onload=hideOnLoad;
  3.  function hideOnLoad(){
  4.  for (var i = 1 ; i <= 6 ; i++) {
  5.    document.getElementById('smenu'+i).style.display='none';
  6.    }
  7.  }
  8.  function display(id) {
  9.  for (var i = 1 ; i <= 6 ; i++) {
  10.    if( i > id ){document.getElementById('smenu'+i).style.display='none';}
  11.    }
  12.   if (document.getElementById('smenu'+id).style.display != 'none') {
  13.    document.getElementById('smenu'+id).style.display = 'none';
  14.   }
  15.   else {
  16.   document.getElementById('smenu'+id).style.display = '';
  17.   }
  18.  }
  19.  </script>


 
et une version perso tres subtile ...(en fait un clik sur un item dont le sous menu est fermé (en vue de l'ouvrir donc) va cacher les sous menus en dessous MAIS un clik sur un item dont le sous menu est ouvert(en vue de le fermer donc) n'aura comme action que de le fermer lui)

Code :
  1. <script type="text/javascript">
  2.  window.onload=hideOnLoad;
  3.  function hideOnLoad(){
  4.  for (var i = 1 ; i <= 6 ; i++) {
  5.    document.getElementById('smenu'+i).style.display='none';
  6.    }
  7.  }
  8.  function display(id) {
  9.   if (document.getElementById('smenu'+id).style.display != 'none') {
  10.    document.getElementById('smenu'+id).style.display = 'none';
  11.   }
  12.   else {
  13.        for (var i = 1 ; i <= 6 ; i++) {
  14.    if( i > id ){document.getElementById('smenu'+i).style.display='none';}
  15.    }
  16.   document.getElementById('smenu'+id).style.display = '';
  17.   }
  18.  }
  19.  </script>


Message édité par mphilamp le 11-06-2005 à 23:30:46
mood
Publicité
Posté le 11-06-2005 à 22:22:14  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [debutantJS]petit bug JS facilement identifiable

 

Sujets relatifs
[résolu][MCD]Petit problème de conception[RESOLU] petit soucis de formulaire et javascript
[Mailing] Petit souci ...[c/c++] petit probleme d'ecriture dans un fichier
[CSS] tout petit problème de version imprimableun petit coup de main pour créer un Button
WHERE Id est le plus petit ou le 2ème plus petit, etc...petit prob d'organisation ou d'arrangement
petit probleme javaPetit site -> bien ou pas ?
Plus de sujets relatifs à : [debutantJS]petit bug JS facilement identifiable


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR