Avatar billede jensl1972 Nybegynder
28. januar 2003 - 21:54 Der er 15 kommentarer

Smart Folding Menu tree

Hejsa!

Jeg har fundet denne menu på http://www.dynamicdrive.com.

Den har næsten alt det jeg har søgt efter i de sidste 3 mdr.

Jeg vil gerne vide om det er muligt at få undermenuerne til at folde ud direkte under hinanden i stedet for indrykket.

Desuden indeholder scriptet en funktion der gør det muligt at ændre på "vinduets/blokkens" størrelse efterhånden som menuen kommer til at fylde mere.
Jeg har sat menuen ind i en blok i Postnuke og det er det eneste script jeg kan finde der ændrer størrelsen dynamisk. Er der nogen der kan hjælpe mig. Hvis funktionen findes til PHP er jeg modtagelig der også.

Jeg håber at det er forståeligt dette her

Jens Lorentsen
Avatar billede backside Nybegynder
28. januar 2003 - 22:08 #1
Øhh, hvilken menu?
Avatar billede olebole Juniormester
28. januar 2003 - 22:24 #2
<ole>

Kan du bruge denne? Du skal bruge to små billeder af en pil mod højre 'arr_c.gif' og en pil ned 'arr_o.gif'. Billederne kan være 13*13 pixels:

<html>
<head>
    <title>&nbsp;&nbsp;..:: Menu 2 ::..&nbsp;&nbsp;&nbsp;&nbsp;</title>
<style type="text/css">
td {
    font-family: verdana;
    font-size: 11px;
}
.pil {
    cursor: pointer;
}
.txtBox {
    display:none;
}
</style>
<script type="text/JavaScript">
/********************************************************************
Variablen 'actMen' refererer til den - til enhver tid - aktive menu.
********************************************************************/
var d=document;
var actMen=false;

function toggle(inx) {
    var tr, img;
    if (actMen) { // Vi folder den aktive menu sammen, hvis der er en
        d.getElementById("txt_"+actMen).style.display = "none";
        d.images["pil_"+actMen].src = "arr_c.gif";
    }
    if (actMen!=inx) { // Vi folder den nye menu ud
        d.getElementById("txt_"+inx).style.display = "block";
        d.images["pil_"+inx].src = "arr_o.gif";
        actMen = inx;
    }
    else actMen = false; // Hvis der klikkes på den åbne (aktive) menu
}
</script>
</head>
<body>

<table style="width:200px;" cellspacing="0" cellpadding="0" border="0">
<tr class="pil" onclick="toggle(1)">
    <td style="width:15px;"><img src="arr_c.gif" name="pil_1"></td>
    <td>Punkt 1</td>
</tr>
<tr id="txt_1" style="display:none;">
    <td>&nbsp;</td>
    <td>
    <table cellspacing="0" cellpadding="0" border="0">
    <tr>
        <td>En eller anden tekst</td>
    </tr>
    <tr>
        <td>En eller anden tekst</td>
    </tr>
    <tr>
        <td>En eller anden tekst</td>
    </tr>
    </table>
    </td>
</tr>

<tr class="pil" onclick="toggle(2)">
    <td><img src="arr_c.gif" name="pil_2"></td>
    <td>Punkt 2</td>
</tr>
<tr id="txt_2" style="display:none;">
    <td>&nbsp;</td>
    <td>
    <table cellspacing="0" cellpadding="0" border="0">
    <tr>
        <td>En eller anden - anden tekst</td>
    </tr>
    <tr>
        <td>En eller anden - anden tekst</td>
    </tr>
    </table>
    </td>
</tr>
</table>

</body>
</html>

/mvh
</bole>
Avatar billede jensl1972 Nybegynder
28. januar 2003 - 22:33 #3
Til olebole.

Jeg kan desværre ikke bruge den menu du sendte. Jeg bruger Postnuke og menuen vil ikke blive inden i blokken.

Ellers tak

Jens Lorentsen
Avatar billede olebole Juniormester
28. januar 2003 - 22:34 #4
Så tror jeg, du gør noget forkert  :)
Avatar billede jensl1972 Nybegynder
28. januar 2003 - 22:35 #5
Til backside.

Smart Folding Menu tree fra http://www.dynamicdrive.com

Jens Lorentsen
Avatar billede jensl1972 Nybegynder
28. januar 2003 - 22:36 #6
Til olebole!

Dette er kilden til den menu jeg snakker om der virker.

Jens
Avatar billede elskermad.dk Nybegynder
28. januar 2003 - 22:39 #7
sorry spam, men eneste måde jeg ka komme i kontakt med olebole!
http://www.eksperten.dk/spm/306940
Har du glemt det, eller mener du at jeg burde ku finde ud af det fra det du har skrevet?
Avatar billede olebole Juniormester
28. januar 2003 - 22:45 #8
elskermad.dk >> Det havde jeg zqda helt glemt ... skal nok kikke på det idag eller imorgen  ;o)

jens >> Du lægger en URL til et stort site ... ikke til en menu.

/mvh
Avatar billede elskermad.dk Nybegynder
28. januar 2003 - 22:47 #9
okay... Nu er jeg glad igen! ;)
logger af her nu, så bar vent til imorgen!
Avatar billede jensl1972 Nybegynder
28. januar 2003 - 22:48 #10
Soory Ole!

<html>

<head>
<style>
<!--
#foldheader{cursor:pointer;cursor:hand ; font-weight:bold ;
list-style-image:url('fold.gif')}
#foldinglist{list-style-image:url('list.gif')}
//-->
</style>
<script language="JavaScript1.2">
<!--

//Smart Folding Menu tree- By Dynamic Drive (rewritten 03/03/02)
//For full source code and more DHTML scripts, visit http://www.dynamicdrive.com
//This credit MUST stay intact for use

var head="display:''"
img1=new Image()
img1.src="fold.gif"
img2=new Image()
img2.src="open.gif"

var ns6=document.getElementById&&!document.all
var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1

function checkcontained(e){
var iscontained=0
cur=ns6? e.target : event.srcElement
i=0
if (cur.id=="foldheader")
iscontained=1
else
while (ns6&&cur.parentNode||(ie4&&cur.parentElement)){
if (cur.id=="foldheader"||cur.id=="foldinglist"){
iscontained=(cur.id=="foldheader")? 1 : 0
break
}
cur=ns6? cur.parentNode : cur.parentElement
}

if (iscontained){
var foldercontent=ns6? cur.nextSibling.nextSibling : cur.all.tags("UL")[0]
if (foldercontent.style.display=="none"){
foldercontent.style.display=""
cur.style.listStyleImage="url(open.gif)"
}
else{
foldercontent.style.display="none"
cur.style.listStyleImage="url(fold.gif)"
}
}
}

if (ie4||ns6)
document.onclick=checkcontained

//-->
</script><title>Ny side 1</title>
</head>

<body>
<font face="Verdana">

<ul>
  <li id="foldheader">News</li>
  <ul id="foldinglist" style="display:none" style=&{head};>
      <li><a href="http://www.cnn.com">CNN</a></li>
      <li><a href="http://www.abcnews.com">ABC News</a></li>
      <li><a href="http://www.news.bbc.co.uk">BBC News</a></li>
  </ul>

  <li id="foldheader">Webmaster</li>
  <ul id="foldinglist" style="display:none" style=&{head};>
      <li><a href="http://www.dynamicdrive.com">Dynamic Drive</a></li>
      <li><a href="http://www.javascriptkit.com">JavaScript Kit</a></li>
      <li><a href="http://www.freewarejava.com">Freewarejava.com</a></li>
  </ul>

  <li id="foldheader">Nested Example</li>
  <ul id="foldinglist" style="display:none" style=&{head};>
      <li><a href="http://www.dynamicdrive.com">outer 1</a></li>
      <li><a href="http://www.dynamicdrive.com">outer 2</a></li>
      <li id="foldheader">Nested</li>
      <ul id="foldinglist" style="display:none" style=&{head};>
        <li><a href="http://www.dynamicdrive.com">nested 1</a></li>
        <li><a href="http://www.dynamicdrive.com">nested 2</a></li>
      </ul>
      <li><a href="http://www.dynamicdrive.com">outer 3</a></li>
      <li><a href="http://www.dynamicdrive.com">outer 4</a></li>
  </ul>
</ul>

</font>

</body>

</html>

Jens
Avatar billede olebole Juniormester
28. januar 2003 - 22:56 #11
Hvis du kan få den til at blive liggende, kan du også med min. Den eneste forskel er, at min er ordentlig kode ... det er den anden ikke  :)
/mvh
Avatar billede jensl1972 Nybegynder
28. januar 2003 - 22:59 #12
OLE

Nu virker den anden lige pludselig heller ikke. SGU.

Nå, du har da fortjent dine point, kan du ikke lige afgive et svar så lukker vi tråden

Jens
Avatar billede jensl1972 Nybegynder
28. januar 2003 - 23:09 #13
Hej ole!

Hvordan sætter jeg flere undermeuer på, altså flere levels

Jens
Avatar billede olebole Juniormester
28. januar 2003 - 23:28 #14
Det gør man ikke umiddelbart ... så skal den skrives en del om
Avatar billede jensl1972 Nybegynder
28. januar 2003 - 23:39 #15
Ole

Ok men jeg takker alligevel. Du kender ikke tilfældigvis noget der ligner men med flere sublevels

Jens
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester