Tilretning af menu
Hej Eksperter.jeg har flg. kode:
<div id="menu">
<!-- her indsættes menuen -->
</div>
</body>
<script language="javascript" type="text/javascript">
menuer = new Array();
menuTitler = new Array();
function nytPunkt(menu, indhold) {
menuer[menu][menuer[menu].length] = indhold;
}
function nyMenu(id, indhold) {
menuer[id] = new Array(); // lav plads til menuens indhold
menuTitler[id] = indhold;
}
function lavPunkt (menuid) {
return '<img src="lukket.gif" id="' + menuid + 'ikon" />' + menuTitler[menuid];
}
function vis() {
kode = '';
for (i = 0; i < menuer.length; i++) {
kode += '<div class="menu" id="' + i + '" onclick="openMenu()">';
kode += lavPunkt(i);
kode += '</div>';
}
element = document.getElementById("menu");
element.innerHTML = kode;
}
function openMenu() {
element = window.event.srcElement;
id = parseInt(element.id);
// Find tekstelementet
element = document.getElementById(id);
// Luk menuen ved næste klik
element.onclick=closeMenu;
// Opdater indholdet af tekstelementet, så menuens indhold vises
indhold = menuer[id];
kode = element.innerHTML + '<br/>';
for (i = 0; i < indhold.length; i++) {
kode += ' <img src="pic2.gif" />';
kode += indhold[i] + "<br/>";
}
element.innerHTML = kode;
// Find ikon
ikon = document.getElementById(id + 'ikon');
// Skift ikon
ikon.src = 'åben.gif';
}
function closeMenu() {
element = window.event.srcElement;
// er der trykket på en henvisning?
if (element.tagName == 'A') {
return; // så skal vi ikke gøre noget
}
id = parseInt(element.id);
// Find tekstelementet
element = document.getElementById(id);
// Erstat indholdet med den lukkede menu
element.innerHTML=lavPunkt(id);
// Åbn menuen ved næste klik
element.onclick = openMenu;
}
</script>
<script language="javascript" type="text/javascript">
nyMenu(0, 'Hovedpunkt1');
nyMenu(1, 'Hovedpunkt2');
nytPunkt(0, '<a href="http://www.test.dk">Underpunkt1</a>');
nytPunkt(0, '<a href="http://www.test.dk">Underpunkt2</a>');
vis();
</script>
Og skal have menuen til at se sådan ud:
[Pic1] Hovedpunkt1
[Pic2] Underpunkt1
[Pic2] Underpunkt2
[Pic2] Hovedpunkt2
Altså det billede der vises før et underpunkt, skal være det der bliver vist foran nogle af hovedpunkterne, nemlig dem der ikke har nogle underpunkter.
Hvordan gør jeg det?
Med Venlig Hilsen
Scifo
