HILFE! Bin auf Fehlersuche...

Eddymaniac

Erfahrenes Mitglied
Hallo Leute,
ich hab mir hier ein Menü in JavaScript zusammengefriemelt habe allerdings das Problem das beim Laden der HTML eines der Untermenüs automatisch mit aufgeht. Ist ja ganz Praktisch, aber gedacht für die Unterseiten, in denen ich mich gerade befinde. Kann mir jemand weiterhelfen und sagen welche Stelle dafür verantwortlich ist?
Besten Dank im Voraus...
Gruß,
Daniel

Coding...
Code:
<html>
<head>
<title></title>

 <style type="text/css">
 <!--
  body { font: 12px arial }
 //-->
 </style>
<script language="JavaScript">
function goToURL() { history.go(-1); }
</script>
  <style>
  .menu
  {
   background-color:#C8E7F9;
   border:1px solid darkblue;
   width:195px;
   font-size:12px;
   font-family:verdana;
   position: absolute;
   font:bold;
   color: #000000;
   cursor: hand;
  }
  .item_panel
  {
    width:195px;
    border-left:1px solid darkblue;
    border-right:1px solid darkblue;
    clip:rect(0,195,0,0);
    position:absolute;
  }
  .item_panel a
  {
   text-decoration:none;
   color:black;
   cursor:hand;
  }
  .item
  {
   background-color: #E9F0F8;
   width: 193px;
   font-size: 10px;
   font-family: verdana;

  }
  </style>

  <script language="JavaScript">
  var height = 20; // Hoehe der Menuekoepfe
  var iheight = 15; // Hoehe der Menueelemente
  var bgc = "#E9F0F8" // background color of the item
  var tc = "black" // text color of the item
  var over_bgc = "white";
  var over_tc = "#004891";
  var speed = 0;
  var timerID = "";
  var N = (document.all) ? 0 : 1;
  var width = 195;
  var self_menu = new Array();
function write_menu()
{
  smc = 0; // count the position of the self_menu
  document.write("<div style='position:absolute'>");
  mn = 0;
  mni = 1;
  start = -1;
  for(i=0;i<Link.length;i++)
  {
   la = Link[i].split("|");
   if (la[0] == "0")
   {
    if(start == 0)
     {
      document.write("</div>");
      h =  csmc * iheight;
      tmn = mn; //-h
      self_menu[smc] = new Array(tmn,h,0,-2);
      smc++;
      mn--;
     }
     csmc = 0;
    document.write("<div class='menu' style='top:"+mn+";height:"+height+"' id='down"+smc+"' onclick='pull_down("+smc+","+mni+")'> "+ la[1] + "</div>");
    self_menu[smc] = new Array(mn,height,0,mni);
    smc++;
    mni++;
    mn+=height;
    start = 1;
   }
   else
   {
    if(start == 1)
     {
      if(N)mn+=2;
       document.write("<div class='item_panel' id='down"+smc+"' style='top:"+mn+"'>");
       start = 0;
     }

    document.write("<a href='"+la[2]+"'");
    if (la[3] != "") document.write(" target='" + la[3] + "' ");
    document.write("><div class='item' id='d"+i+"' style='height:"+iheight);
    if (N) document.write(";width:150");
    document.write("' onmouseover='color(this.id)' onmouseout='uncolor(this.id)'>  "+ la[1] + "</div></a>");
    csmc++;
   }
  }
  if (start == 0)
   {
     document.write("</div>");
     h =  csmc * iheight;
     tmn = mn + 5; //-h
     self_menu[smc] = new Array(tmn,h,0);
     name = "down" + (self_menu.length-1);
     obj = document.getElementById(name);
     obj.style.borderBottomColor = "darkblue";
     obj.style.borderBottomWidth = 1;
     obj.style.borderBottomStyle = "solid";
   }
  document.write("</div>");}
function color(obj)
{
 document.getElementById(obj).style.backgroundColor = over_bgc;
 document.getElementById(obj).style.color = over_tc
}

function uncolor(obj)
{
 document.getElementById(obj).style.backgroundColor = bgc;
 document.getElementById(obj).style.color = tc
}

function pull_down(nr,c)
{
 if (timerID == "")
 {
 to = self_menu[nr+1][1]
 begin = nr + 2;
 if (timerID != "") clearTimeout(timerID);
 if (self_menu[nr+1][2] == 0)
 {
  self_menu[nr+1][2] = 1;
  if(nr == self_menu.length-2) {to++;}
  epull_down(begin,to,0);
 }
 else
 {
  to = 0;
  self_menu[nr+1][2] = 0;
  name = "down"+(nr+2);
  open_item = 0;
  for(i=0;i<nr;i++)
  {
   if(self_menu[i][2] == 1)
    {open_item += self_menu[i][1];
    }
  }
  if (N == false) {open_item-= (c*1)};
  if (nr== self_menu.length-2) {val = self_menu[self_menu.length-1][1];to=-1;}
  else  val = parseInt(document.getElementById(name).style.top) -(open_item)-(c*height);
  epull_up(begin,to,val);
 }
 }
}

function epull_down(nr,to,nowv)
{
 name = "down" + (nr-1);
 obj = document.getElementById(name).style.clip = "rect(0,"+width+","+(nowv+1)+",0)";
 for (i=nr;i<self_menu.length;i++)
 {
  name = "down" + i;
  obj = document.getElementById(name);
  obj.style.top = parseInt(obj.style.top)+1;
 }
 nowv++;
 if(nowv < to) timerID = setTimeout("epull_down("+nr+","+to+","+nowv+")",speed);
 else timerID = "";
}

function epull_up(nr,to,nowv)
{
 name = "down" + (nr-1);
 obj = document.getElementById(name).style.clip = "rect(0,"+width+","+nowv+",0)";
 for (i=nr;i<self_menu.length;i++)
 {
  name = "down" + i;
  obj = document.getElementById(name);
  obj.style.top = parseInt(obj.style.top)-1;
 }
 nowv--;
 if(nowv > to) timerID = setTimeout("epull_up("+nr+","+to+","+nowv+")",speed);
 else timerID = "";
}

function startup(nr)
{
 write_menu();
 if (nr != 0)
 {
 for(i=0;i<self_menu.length;i++)
 {
  if(self_menu[i][3] == nr) pull_down(i,nr)
  i==self_menu.length;
 }
 }
}
</script>

</head>
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000" background="Hintergrund2.jpg">

<table border="0" width="700" height="600" align="left">
<tr height="100">
<td>
</td>
</tr>
<tr align="top">
<td valign="top">
<script language="JavaScript">
      //Link[nr] = "position [0 is menu/1 is item],Link name,url,target (blank|top|frame_name)"
  var Link = new Array();
  Link[0] = "0|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Produkte";
  Link[1] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Home|http://www.bla.de|";
  Link[2] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Service|http://www.bla.de|";
  Link[3] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Aktuelles|http://www.bla.de|";
  Link[4] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kontakt|http://www.bla.de|";
  Link[5] = "0|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Spannbacken|http://www.bla.de|";
  Link[6] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;weiche Aufsetzbacken|http://www.bla.de|";
  Link[7] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;harte Aufsetzbacken|http://www.bla.de|";
  Link[8] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Segmentaufsetzbacken|http://www.bla.de|";
  Link[9] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pendelbacken|http://www.blabla.de|";
  Link[10] = "1|&nbsp;&nbsp;&nbsp;Monoblock-Stufenblockbacken|http://www.bla.de|";
  Link[11] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Grundbacken|http://www.bla.de|"
  Link[12] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Stufenbacken|http://www.bla.de|";
  Link[13] = "0|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Spannfutter";
  Link[14] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Handspannfutter|http://www.bla.de|";
  Link[15] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kraftsparfutter|http://www.bla.de|";
  Link[16] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Niederzugfutter|http://www.bla.de|";
  Link[17] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ausgleichsfutter|http://www.bla.de|";
  Link[18] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Schwenkfuter|http://www.bla.de|";
  Link[19] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Wellenspannfutter|http://www.bla.de|";
  Link[20] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Menbranspannfutter|http://www.bla.de|";
  Link[21] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pneumatische Vorderenfutter|http://www.bla.de|";
  Link[22] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Planspannfutter|http://www.bla.de|";
  Link[23] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Konsolfutter|http://www.bla.de|";
  Link[24] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Membranspannfutter|http://www.bla.de|";
  Link[25] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Wellenspannfutter|http://www.bla.de|";
  Link[26] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Schwenkfutter|http://www.bla.de|";
  Link[27] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hydraulische Ausgleichsfutter|http://www.bla.de|";
  Link[28] = "1|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sechs Backenfutter|http://www.bla.de|";
  Link[29] = "0|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Spannzangen";
  Link[30] = "1|&nbsp;&nbsp;&nbsp;Spannzange Hartbeschichtet|http://www.bla.de|";
  Link[31] = "1|verschiedene Sonderspannzangen|http://www.bla.de|";
  startup(4);
  </script>

</td>
</tr>
<tr>
<td></td>
</tr>
</table>

</body>
</html>

P.S. Ihr könnt gerne den Quellcode kopieren und die Geschichte testen...
 
Zuletzt bearbeitet von einem Moderator:

HUBBLE

Mitglied
Ich will deinen Optimismus nicht schmälern, aber wer dir dabei helfen will, verlangt am Ende Cash. Was ich mein, du kannst wirklich nicht erwarten, dass sich jemand da rein fuchst!
 

Sven Mintel

Mitglied
Naja...soviel Aufwand ist's nun doch nicht ;)
Ersetzte am Ende des Skriptes die "4" in "startup(4)" durch eine "0"


P.S.:Nächstes mal bitte Code selbst in [CODE]-Tags schreiben...das erhöht die Lesbarkeit ungemein, und macht die Threads schlanker :)
 

Eddymaniac

Erfahrenes Mitglied
Aja, dann ist ja alles klar. Das hat mir jetzt echt tierisch geholfen.
Bin euch unendlich DANKBAR das ihr mir trotzdem geholfen habt. Wusste schon der Code ist recht groß. Wer weiß wie lange ich sonst noch gesucht hätte.

Also, schöne woche euch noch!
Gruß,
Daniel
 

Neue Beiträge