Accueil > > > MENU DYNAMIQUE VERTICAL AVEC EFFET BOUTON
MENU DYNAMIQUE VERTICAL AVEC EFFET BOUTON
Information sur la source
Description
Son utilité est la meme que tout autre menu. Sauf que celui-ci est, je pense, relativement court et facile à comprendre à comparer au autres. C'est le premier menu dynamique que je fait et j'espere qu'il vous plaira.
Source
- __________________________________________________________________________
- Script en JavaScript
- __________________________________________________________________________
-
- var C_MENUBG = "silver"
- var C_MENUTEXT = "black"
-
- var C_ITEMBG = "#bf9f7a"
- var C_ITEMTEXT = "black"
-
- function CreateMenu() {
- document.write("<table onselectstart=\"return false\" oncontextmenu=\"return false\" width=200><tr><td>")
- for (var i = 0; i < menus.length; i++) {
- document.write("<span class=3dOut style=background-color:"+C_MENUBG+";color:"+C_MENUTEXT+";display:; id=element"+i+" onMouseOut=DoMenuMouseUp(this) onMouseDown=DoMenuMouseDown(this) onMouseUp=DoMenuMouseUp(this) onClick=DoMenuClick(this)><center>"+menus[i]+"</center></span>")
- for (var j = 0; j < sousmenus[i].length; j++)
- document.write("<span class=item style=background-color:"+C_ITEMBG+";color:"+C_ITEMTEXT+";display:none; id=element"+i+"$"+j+"><center>"+sousmenus[i][j]+"</center></span>")
- }
- document.write("</td></tr></table>")
- }
-
- function DoMenuMouseDown(element) {
- element.className = "3dIn"
- }
-
- function DoMenuMouseUp(element) {
- element.className = "3dOut"
- }
-
- function DoMenuClick(element) {
- ShowHideMenu(element)
- }
-
- function ShowHideMenu(element) {
- var n = GetNumMenu(element)
- if (GetObject("element"+n+"$0").style.display == "none")
- ShowMenu(element)
- else
- HideMenu(element)
- }
-
- function ShowMenu(element) {
- var n = GetNumMenu(element)
- for (var i = 0; i < sousmenus[n].length; i++)
- GetObject("element"+n+"$"+i).style.display = ""
- }
-
- function HideMenu(element) {
- var n = GetNumMenu(element)
- for (var i = sousmenus[n].length - 1; i >= 0; i--)
- GetObject("element"+n+"$"+i).style.display = "none"
- }
-
- function GetNumMenu(element) {
- var n = 0
- while (GetObject("element"+n) != element)
- n++
- return n
- }
-
- function GetObject(id) {
- return document.getElementById(id)
- }
- __________________________________________________________________________
- Feuille de style
- __________________________________________________________________________
-
- .3dOut {
- border: solid 1px;
- border-top-color: white;
- border-bottom-color: gray;
- border-left-color: white;
- border-right-color: gray;
- font-family: Ms Serif;
- font-size: 18px;
- color: black;
- width: 175;
- height: 10;
- cursor: default;
- }
-
- .3dIn {
- border: solid 1px;
- border-top-color: gray;
- border-bottom-color: white;
- border-left-color: gray;
- border-right-color: white;
- font-family: Ms Serif;
- font-size: 18px;
- color: black;
- width: 175;
- height: 10;
- cursor: default;
- }
-
- .item {
- font-family: Ms Serif;
- font-size: 18px;
- width: 175;
- height: 10;
- cursor: default;
- }
- __________________________________________________________________________
- Contenu de la page html
- __________________________________________________________________________
-
- <html>
- <title>:: Menu Dynamique</title>
- <head>
-
- <link rel=stylesheet href="style.css" />
- <script language=JavaScript src="dyn_menu.js"></script>
-
- <!-- Début du script -->
-
- <script language=JavaScript>
- <!--
- var menus = [
- "Menu 1",
- "Menu 2",
- "Menu 3",
- "Menu 4",
- "Menu 5",
- "Menu 6",
- "Menu 7",
- "Menu 8"
- ]
-
- var sousmenus = [
- /* Options du premier menu */
- [
- "Option 1",
- "Option 2",
- "Option 3",
- "Option 4",
- "Option 5"
- ],
-
- /* Options du deuxième menu */
- [
- "Option 1",
- "Option 2",
- "Option 3"
- ],
-
- /* Options du troisième menu */
- [
- "Option 1",
- "Option 2",
- "Option 3",
- "Option 4",
- "Option 5",
- "Option 6",
- "Option 7"
- ],
-
- /* Options du quatrième menu */
- [
- "Option 1",
- "Option 2",
- "Option 3",
- "Option 4"
- ],
-
- /* Options du cinquième menu */
- [
- "Option 1",
- "Option 2"
- ],
-
- /* Options du sixième menu */
- [
- "Option 1",
- "Option 2",
- "Option 3",
- "Option 4",
- "Option 5",
- "Option 6",
- "Option 7",
- "Option 8"
- ],
-
- /* Options du septième menu */
- [
- "Option 1",
- "Option 2",
- "Option 3",
- "Option 4",
- "Option 5",
- "Option 6"
- ],
-
- /* Options du huitième menu */
- [
- "Option 1",
- "Option 2",
- "Option 3",
- "Option 4"
- ]
- ]
-
- CreateMenu()
- //-->
- </script>
-
- <!-- Fin du script //-->
-
- </head>
-
- <body bgcolor=black oncopy="return false"></body>
- </html>
__________________________________________________________________________
Script en JavaScript
__________________________________________________________________________
var C_MENUBG = "silver"
var C_MENUTEXT = "black"
var C_ITEMBG = "#bf9f7a"
var C_ITEMTEXT = "black"
function CreateMenu() {
document.write("<table onselectstart=\"return false\" oncontextmenu=\"return false\" width=200><tr><td>")
for (var i = 0; i < menus.length; i++) {
document.write("<span class=3dOut style=background-color:"+C_MENUBG+";color:"+C_MENUTEXT+";display:; id=element"+i+" onMouseOut=DoMenuMouseUp(this) onMouseDown=DoMenuMouseDown(this) onMouseUp=DoMenuMouseUp(this) onClick=DoMenuClick(this)><center>"+menus[i]+"</center></span>")
for (var j = 0; j < sousmenus[i].length; j++)
document.write("<span class=item style=background-color:"+C_ITEMBG+";color:"+C_ITEMTEXT+";display:none; id=element"+i+"$"+j+"><center>"+sousmenus[i][j]+"</center></span>")
}
document.write("</td></tr></table>")
}
function DoMenuMouseDown(element) {
element.className = "3dIn"
}
function DoMenuMouseUp(element) {
element.className = "3dOut"
}
function DoMenuClick(element) {
ShowHideMenu(element)
}
function ShowHideMenu(element) {
var n = GetNumMenu(element)
if (GetObject("element"+n+"$0").style.display == "none")
ShowMenu(element)
else
HideMenu(element)
}
function ShowMenu(element) {
var n = GetNumMenu(element)
for (var i = 0; i < sousmenus[n].length; i++)
GetObject("element"+n+"$"+i).style.display = ""
}
function HideMenu(element) {
var n = GetNumMenu(element)
for (var i = sousmenus[n].length - 1; i >= 0; i--)
GetObject("element"+n+"$"+i).style.display = "none"
}
function GetNumMenu(element) {
var n = 0
while (GetObject("element"+n) != element)
n++
return n
}
function GetObject(id) {
return document.getElementById(id)
}
__________________________________________________________________________
Feuille de style
__________________________________________________________________________
.3dOut {
border: solid 1px;
border-top-color: white;
border-bottom-color: gray;
border-left-color: white;
border-right-color: gray;
font-family: Ms Serif;
font-size: 18px;
color: black;
width: 175;
height: 10;
cursor: default;
}
.3dIn {
border: solid 1px;
border-top-color: gray;
border-bottom-color: white;
border-left-color: gray;
border-right-color: white;
font-family: Ms Serif;
font-size: 18px;
color: black;
width: 175;
height: 10;
cursor: default;
}
.item {
font-family: Ms Serif;
font-size: 18px;
width: 175;
height: 10;
cursor: default;
}
__________________________________________________________________________
Contenu de la page html
__________________________________________________________________________
<html>
<title>:: Menu Dynamique</title>
<head>
<link rel=stylesheet href="style.css" />
<script language=JavaScript src="dyn_menu.js"></script>
<!-- Début du script -->
<script language=JavaScript>
<!--
var menus = [
"Menu 1",
"Menu 2",
"Menu 3",
"Menu 4",
"Menu 5",
"Menu 6",
"Menu 7",
"Menu 8"
]
var sousmenus = [
/* Options du premier menu */
[
"Option 1",
"Option 2",
"Option 3",
"Option 4",
"Option 5"
],
/* Options du deuxième menu */
[
"Option 1",
"Option 2",
"Option 3"
],
/* Options du troisième menu */
[
"Option 1",
"Option 2",
"Option 3",
"Option 4",
"Option 5",
"Option 6",
"Option 7"
],
/* Options du quatrième menu */
[
"Option 1",
"Option 2",
"Option 3",
"Option 4"
],
/* Options du cinquième menu */
[
"Option 1",
"Option 2"
],
/* Options du sixième menu */
[
"Option 1",
"Option 2",
"Option 3",
"Option 4",
"Option 5",
"Option 6",
"Option 7",
"Option 8"
],
/* Options du septième menu */
[
"Option 1",
"Option 2",
"Option 3",
"Option 4",
"Option 5",
"Option 6"
],
/* Options du huitième menu */
[
"Option 1",
"Option 2",
"Option 3",
"Option 4"
]
]
CreateMenu()
//-->
</script>
<!-- Fin du script //-->
</head>
<body bgcolor=black oncopy="return false"></body>
</html>
Conclusion
Jusqu'a présent je ne connais pas de bugs, prevenez-moi s'il y en a.
Historique
- 12 novembre 2004 03:10:11 :
- - Ajoût de menus et d'options
- Effet bouton sur les menus
- Couleurs éditables
- Amélioration du code
Sources du même auteur
OUTIL DE RECHERCHE SIMPLE ET PARAMÈTRABLEOUTIL DE RECHERCHE SIMPLE ET PARAMÈTRABLEIl s'agit en fait d'une application (*.hta) qui permet de rechercher sur le Web beaucoup plus rapidement et plus efficacement, tout en s'adaptant à la...
PROTOTYPE DE DRAG'N DROPPROTOTYPE DE DRAG'N DROP Un code qui, je crois, pourra servir à la réalisation de projets. Comme le titre l'indique, il s'agit d'un prototype de drag'n drop. Je l'ai simplifié...
CONVERTISSEUR DE MESURES D'ANGLESCONVERTISSEUR DE MESURES D'ANGLES Voici ce que je pourrais appeler un «convertisseur de mesures d'angles». Par exemple, convertir x° en radians ou en grad, et vice-versa. Son utilisati...
MENU DYNAMIQUE HORIZONTAL SIMPLEMENU DYNAMIQUE HORIZONTAL SIMPLEC'est un menu, différent de mon dernier car, dans celui-ci, les sous-menus s'affichent à coté des menus au lieu d'en dessous. Aussi, on peut définir s...
Sources de la même categorie
MENU VERTICALE GAUCHE ET DROIT DEROULANTMENU VERTICALE GAUCHE ET DROIT DEROULANTc'est repris d'une de mes source (menu glissant) sauf que au lieu de deplacer un element dans le document c'est un div en overflow hidden qui s'agrand...
par kazma
MENU VERTICALE EN TRANSPARENCEMENU VERTICALE EN TRANSPARENCECe menu est complètement modifiable, les fenêtres de sous menus étant composées de plusieur images, vous pouvez modifier la taille des sous menus en...
par dlvains
MENU DÉROULANT EN IMAGESMENU DÉROULANT EN IMAGES un menu simple a modifier, il vous suffit de changer le texte sur le PSD et d'enregistrer au format PNG.
si vous modifiez la largeur des images, pe...
par dlvains
TBFRAME: TAB BROWSING FRAMETBFRAME: TAB BROWSING FRAME Cela fait un moment que j'avais eu l'idée de mettre en ligne ce script, mais je n'avais jamais eu le temps de mettre un coup de propre dans le code ai...
par triumphs
MENU PRINCIPALMENU PRINCIPALBonjour, dans ce petit source, j'ai met une belle menu avec php,javascript, css, pour me contactet , ABOUSSEBABA ALI <contact@aliwebmaster.com>, à vou...
par ali1987
Commentaires et avis
|
Derniers Blogs
TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|