jadorelescss38 | J'ai un menu vertical que j'ai inséré dans un site en ASP et auquel je voudrais rajouter des options....
- Je souhaiterai que mon menu reste en état lorsque je recharge ma page. Il s'agit d'un menu qui ressemble a un treeview et je veux donc que les sous-menu qui ont été développé le reste. Je pensais passer par une variable de session, mais est-ce possible en javascript ?
- Je souhaiterai a l'aide d'un boutton pouvoir développer l'ensemble du menu et inversement le refermer...
Si quelqu'un a des pistes a m'indiquer
Merci d'avance
Voici le code de mon menu:
Code :
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <HTML>
- <HEAD>
- <TITLE>Test de menu dynamique</TITLE>
- <STYLE>
- .parent {
- font-family: verdana;
- font-weight: bold;
- font-size: 10pt;
- cursor: hand;
- }
- .child {
- font-size: 10pt;
- margin-left: 10pt;
- font-weight: normal;
- }
- a:hover { color:red; }
- </STYLE>
- <SCRIPT LANGUAGE=javascript>
- var intCount = 0;
- //-Fonction d'ajout d'entrées principales-------------------------
- function DynamicMenu_addParent(strName) {
- var strID = 'P_' + strName;
- var strTemp = '<DIV ID="' + strID + '" CLASS="parent"';
- strTemp += ' onclick ="expandCollapse(this);">';
- strTemp += '<IMG SRC="left.gif" Height="12">';
- strTemp += ' ' + strName;
- strTemp += '<DIV STYLE="display: none" CLASS="child"></DIV>';
- strTemp += '</DIV>';
- this.div.innerHTML += strTemp;
- this.currentChild = document.getElementById(strID);
- }
- //-Fonction d'ajout des sous entrées principales-------------------------
- function DynamicMenu_addSousParent(strName) {
- var strID = 'S_' + strName;
- var strTemp = '<DIV ID="' + strID + '" CLASS="parent"';
- strTemp += ' onclick ="expandCollapse(this);">';
- strTemp += '<IMG SRC="left.gif" Height="12">';
- strTemp += ' ' + strName;
- strTemp += '<DIV STYLE="display: none" CLASS="child"></DIV>';
- strTemp += '</DIV>';
- if (document.all) {
- this.currentChild.children[1].innerHTML += strTemp;
- } else {
- this.currentChild.childNodes[2].innerHTML += strTemp;
- }
- this.currentChild = document.getElementById(strID);
- }
- //-Fonction d'ajout de liens dans le menu-------------------------
- function DynamicMenu_addChild(strName,strURL) {
- var strTemp = '<A HREF="' + strURL + '"'
- + ' onClick="cancelBubble(arguments[0]);">'
- + strName + '</A><BR>';
- if (document.all) {
- this.currentChild.children[1].innerHTML += strTemp;
- } else {
- this.currentChild.childNodes[2].innerHTML += strTemp;
- }
- }
- //-inhibe la cascade d'évènements au DIV conteneur----------------
- function cancelBubble(netEvent) {
- if (document.all) {
- window.event.cancelBubble = true;
- } else {
- netEvent.cancelBubble = true;
- }
- }
- //-Contracte ou expanse le menu-----------------------------------
- function expandCollapse(objElement) {
- var strId = objElement.id;
- if (intCount == 0) {
- if (document.all) {
- var imgIcon = objElement.children[0];
- objElement = objElement.children[1];
- } else {
- var imgIcon = objElement.childNodes[0];
- objElement = objElement.childNodes[2];
- }
- if (objElement.style.display == "none" ) {
- objElement.style.display = "block" ;
- imgIcon.src = "bottom.gif" ;
- } else {
- objElement.style.display = "none" ;
- imgIcon.src = "left.gif" ;
- }
- }
- if (strId.substring(0,1) == 'S') {
- intCount = 1;
- }
- if (strId.substring(0,1) == 'P' && intCount == 1) {
- intCount = 0;
- }
- }
- //-Fonction de création de menu dynamique-------------------------
- function DynamicMenu(strName) {
- //var id = "Menu" + intCount++;
- var id = strName;
- document.write('<DIV Id="' + id + '"></DIV>');
- this.div = document.getElementById(id);
- this.currentChild = null;
- this.addParent = DynamicMenu_addParent;
- this.addSousParent = DynamicMenu_addSousParent;
- this.addChild = DynamicMenu_addChild;
- }
- </SCRIPT>
- </HEAD>
- <BODY>
- <SCRIPT Language="Javascript">
- var menu = new DynamicMenu("Menu1" );
- menu.addParent("Présentation","page1.html" );
- menu.addChild("Lien 1","page1.html" );
- menu.addSousParent("Node 11","" );
- menu.addChild("Lien 1","page1.html" );
- menu.addChild("Lien 2","page2.html" );
- menu.addSousParent("Node 111","" );
- menu.addChild("Lien 1","page1.html" );
- menu.addParent("Liens","" );
- menu.addChild("Lien 1","page1.html" );
- menu.addChild("Lien 2","page2.html" );
- </SCRIPT>
- </BODY>
- </HTML>
|
|