style menu avec javascript
Bonjour,
j'ai un menu constitué de 4 éléments, je veux quand on clique sur un élément qu'il change de colore mais les autres doivent rester inéchangeable.
voici le code:
Html:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| <table border="0" style="position:absolute; left:300px;" id="Banner_tabs" width="70%" cellspacing="0" >
<tr id="ligne1">
<td class="TdMenu" id="1" onClick="active(this.id);">
<DIV class="OtherTabs">
<NOBR>
<com:THyperLink NavigateUrl="?page=Home" Text="Accueil" />
</NOBR>
</DIV>
</td>
<td class="TdMenu" id="2" onClick="active(this.id);">
<DIV class="OtherTabs">
<NOBR>
<com:THyperLink NavigateUrl="?page=GestionEmetteur" Text="Etablissements" />
</NOBR>
</DIV>
</td>
<td class="TdMenu" id="3" onClick="active(this.id);">
<DIV class="OtherTabs">
<NOBR>
<com:THyperLink NavigateUrl="?page=GestionCentreGestion"
Text="Centres de Gestion" />
</NOBR>
</DIV>
</td>
<td class="TdMenu" id="4" onClick="active(this.id);">
<DIV class="OtherTabs" >
<NOBR>
<com:THyperLink NavigateUrl="?page=GestionSite" Text="Sites" />
</NOBR>
</DIV>
</td>
</tr>
</table> |
javascript:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| function active(id)
{
var table = document.getElementById("Banner_tabs");
var row;
var cell;
var element;
for (var i = 0; i < table.rows.length; i++)
{
row = table.rows[i];
for (var j = 0; j < row.cells.length; j++)
{
cell = row.cells[j];
element = cell.firstChild;
//alert(cell.length);exit;
if(cell.id == id)
{ //alert("test");exit;
// cell.className = 'tabOn';
if (element != null && element.tagName == "a")
{
//alert("test");exit;
element.className = 'tabOn';
}
}
else
{
/* cell.className = 'TdMenu';*/
if (element != null && element.tagName == "a")
{
element.className = 'TdMenu';
}
}
// ex1 : cellule contenant directement du texte.
//alert("Contenu de la cellule [" + i + ";" + j + "] : " + cell.firstChild.innerHTML); exit;
}
}
} |
mais mon code ne change pas de style, je sais pas pourquoi, pouvez vous m'aider?
Merci d'avance.