Java script niet geheel zichtbaar

Status
Niet open voor verdere reacties.

Slicer

Gebruiker
Lid geworden
29 nov 2005
Berichten
29
Ben sinds kort bezig in dreamweaver (echte beginner dus) en tracht een javascript met een verticaal menu (download van internet) te plaatsen in het linker frame (fixed top, nested left). Bij het bekijken van het resultaat in de browser is slechts een klein deel zichtbaar. Kan iemand mij hierbij helpen.

Dit is de code;

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script language="JavaScript">
function goToURL() { history.go(-1); }
</script>
<style>
.menu
{
background-color:#6666FF;
border:1px solid darkblue;
width:150px;
font-size:11px;
font-family:verdana;
position: absolute;
font:bold;
color: #ffffff;
cursor: hand;
}
.item_panel
{
width:150px;
border-left:1px solid darkblue;
border-right:1px solid darkblue;
clip:rect(0,150,0,0);
position:absolute;
}
.item_panel a
{
text-decoration:none;
color:black;
cursor:hand;
}
.item
{
background-color: #99CCFF;
width: 148px;
font-size: 10px;
font-family: verdana;

}
</style>

<script language="JavaScript">
var height = 20; // Hoogte van de hoofdmenu linken
var iheight = 15; // hoogte van de menu elementen
var bgc = "#D8D8D8" // Achtergrondkleur menu element
var tc = "black" // text kleur van het menu element
var over_bgc = "#FFFFFF";//achtergrondkleur menu item bij mouse-over
var over_tc = "#FF0000"; //teskt kleur bij mouse-over
var speed = 0;
var timerID = "";
var N = (document.all) ? 0 : 1;
var width = 152;
var self_menu = new Array();
function write_menu()
{
smc = 0;
document.write("<div style='position:absolute'>");
mn = 0;
mni = 1;
start = -1;
for(i=0;i<Link.length;i++)
{
la = Link.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[2] == 1)
{open_item += self_menu[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[3] == nr) pull_down(i,nr)
i==self_menu.length;
}
}
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title></head>

<body>
<left>
<table width=140 height="1796">
<tr>
<td height="1802" align="left"><script language="JavaScript">
//Link[nr] = "positie [0 is menu/1 is een item],Link naam ,url,target (blank|top|frame_naam)"
// je kunt eenvoudig items toevoegen, gewoon doornummeren
var Link = new Array();
Link[0] = "0|Hoofd link 1";
Link[1] = "1|Sublink 1|http://www.leejoo.nl|blank";
Link[2] = "1|Sublink 1|http://www.leejoo.nl|blank";
Link[3] = "1|Sublink 1|http://www.leejoo.nl|blank";
Link[4] = "1|Sublink 1|http://www.leejoo.nl|blank";
Link[5] = "0|Hoofd link 2";
Link[6] = "1|Sublink 2|http://www.leejoo.nl|blank";
Link[7] = "1|Sublink 2|http://www.leejoo.nl|blank";
Link[8] = "1|Sublink 2|http://www.leejoo.nl|blank";
Link[9] = "1|Sublink 2|http://www.leejoo.nl|blank"
Link[10] = "0|Hoofd link 3";
Link[11] = "1|Sublink 3|http://www.leejoo.nl|blank";
Link[12] = "1|Sublink 3|http://www.leejoo.nl|blank";
Link[13] = "0|Hoofd link 4";
Link[14] = "1|Sublink 4|http://www.leejoo.nl|blank";
Link[15] = "1|Sublink 4|http://www.leejoo.nl|blank";
Link[16] = "1|Sublink 4|http://www.leejoo.nl|blank";
Link[17] = "1|Sublink 4|http://www.leejoo.nl|blank";
Link[18] = "0|Hoofd link 5";
Link[19] = "1|Sublink 5|http://www.leejoo.nl|blank";
Link[20] = "1|Sublink 5|http://www.leejoo.nl|blank";
Link[21] = "1|Sublink 5|http://www.leejoo.nl|blank";
Link[22] = "1|Sublink 5|http://www.leejoo.nl|blank";
startup(0);
</script></td>
</tr>
</table>
</body>

</html>
 
Werkt niet met frames, menu verstopt zich dan.
Met Coolmenu gaat het wel.
http://www.google.nl/search?q=coolm...ient=firefox-a&rls=org.mozilla:en-US:official

:cool:

Hallo Peter,
Bedankt dat je op mijn vraag hebt gereageerd. Ik heb op: http://www.dhtmlcentral.com/projects/coolmenus/?m=31 een menu gedownload en proberen te zetten in een frame zoals in de vraag beschreven. Het lukte niet. Vervolgens uit ellende geprobeerd het menu te plaatsen in een table maar dat lukte ook niet. Volgens mij doe ik iets heel doms. kan je mij vertellen hoe ik het moet doen?

Slicer
 
Mooi zo, ook weer opgelost :thumb:

Bij veel zip bestanden en progjes welke je download zijn readme files.
En soms is het een beetje vogelen om eruit te komen.

:cool:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan