javascript, javascripts, js, jscript, scripts, script, html, dhtml, dynamic, cookies, menu, frames, formulaire, source, code, gratuit, exemple, developper, html, php4, php3, php, mysql, liens, php2, forum, livre d'or, pages, web, dynamiques, programmation, webmasters, webmestres, tutorial, tutoriel, annuaires, espace, membres, banniéres, caddies, chats, compteurs, formulaires, forums, gestion, documentations, news, mailing, list, newsletter, moteurs, recherche, sondages, votes, statistiques, autres, agendas, calendriers, mail, annonces, audio, outils, réseaux, graphique, recommandation, site, sécurité, portail, creation, actualité, moteur de recherche, moteur, trucs, astuces, services, flash, action script, actionscript Tutoriaux : Javascript
Script Masters : Javascript, Php, Mysql, html pour Webmasters!
 
    Script Masters
 
    Espace membre
 
    Langages
 
    Autres ressources
 
    Ressources graphiques
 
    Recherche
 
    Kit graphique
 
    Liens
 
    Statistiques


 


Télécharger les sources de cet article


Untitled Document
Menu déroulant dynamique vertical en DHTML - Partie 2


Tutorial écrit par : Daniel Fabien - Script Masters

 

2eme étape : Préparation du code


La préparation du code nécessite deux étapes importantes. Tout d’abord, il faut cacher les parties dites déroulantes du menu. Il faut par ailleurs adapter le script au navigateur qui sera chargé de l’interpréter. Ceci fait, nous pourrons enfin, en troisième partie, développer l’aspect dynamique du menu.

 

Masquer les parties déroulantes

Le terme « masquer les parties déroulantes » est une façon simplifier d’exprimer le fait de rendre invisible les sous menus qui sont en réalité des lignes d’un tableau Html. Avant d’expliquer cette technique, il est nécessaire de rappeler que le langage de script portant le nom de DHTML est en fait un ‘melting pot’ de langage javascript et de feuilles de style (css). Ces dernières agissent principalement sur l’aspect visuel alors que le javascript les fait réagir à un instant ou sur un évènement bien précis.

Pour revenir à notre menu, nous allons donc utiliser les propriétés de style pour cacher les lignes du tableau qui feront office de sous menu. Voici la synthaxe :

Fig. 2.1 : Masquer une ligne d’un tableau

<tr style="display:none" id="menu1">
<td>Cette ligne du tableau sera caché</td>
</tr>

De cette manière, nous pouvons cacher les sous menus du tableau tout en sachant que le code Html de ces lignes est présent. La propriété « id » permettra plus tard de reconnaître la ligne cachée à partir de l’identifiant qu’on lui aura attribué (ici « menu1 »). Nous obtenons alors le résultat suivant :

Titre 1
Titre 2

 

Détection du navigateur

Dans la partie suivante, nous verrons comment Javascript nous permettra de les faire apparaître sur un clic. Mais avant d’en arriver là, il est nécessaire de préciser que javascript est géré différemment selon le navigateur du client. Pour notre script, nous allons paramétrer le menu afin qu’il soit compatible avec Internet Explorer 4+ et Netscape 6+.

Pour ce faire nous devons dans un premier temps détecter le type de navigateur. Pour cela, on test si les différentes fonctions permettant d’accéder à un élément de la page est disponible. Voici un récapitulatif des fonctions utilisées par les différentes versions d’Internet Explorer et Netscape. :

Fig. 2.2 : Fonctions Javascript d’accès aux objets
Internet Explorer 4 : document.all
IE 5+ : document.all && document.getElementById
Netscape 4 : document.layers
Netscape 6+ : document.getElementById

Notez qu’à titre d’information, j’ai ajouté la fonction supportée par Netscape 4. Cependant, d’autres problèmes d’incompatibilité se posant par la suite, il est préférable de le laisser de coté ce navigateur afin de simplifier ce tutorial déjà assez complexe.

Fig. 2.3 : Reconnaissance du navigateur
// Booléen reconnaissant le navigateur
isIE = (document.all)
isNN6 = (!isIE) && (document.getElementById)

Les variables isIE et isNN6 prendront ainsi les valeurs true ou false selon le navigateur utilisé par le client. Elles seront utilisées plus tard dans la troisième partie de ce tutorial.

Cette troisième partie est la plus longue des trois, mais aussi la plus intéressante d’un point de vue développement. Vous y apprendrez à ouvrir et fermer les sous-menus, créer vos liens pour qu’ils soient notamment compatibles avec les frames, ajouter des effets de rollover ou bien encore changer d’image lors de l’ouverture d’un menu.
Curieux de voir ça ?

Cliquez ici pour lire la suite de ce tutorial...

 

- Un problème? Posez vos questions sur le forum Javascript!
- Ce tutorial a été consulté 24319 fois


Script Masters © Ce texte est la propriété de son auteur.
Toute reproduction est interdite.

 




 
Votre nom de domaine est-il libre?
 
Fabien Daniel - fd-web.net © 2001-2008 | Hebergement : OVH | CNIL : 796128