主题:动态菜单有关?
下面是动态菜单的代码;不知道哪里出一错?
请大哥们帮个忙:
<div id="div0" style="position:absolute; left:12px; top:151px; width:116px; height:104px; z-index:1" >
<table width="100%" border="0" height="100%" cellpadding="0">
<tr>
<td bgcolor="#FFFFCC" height="17">
<div align="left"><a href="#" onclick="moveto(1)">主菜单1</a></div></td></tr>
<tr><td bgcolor="#99FFFF">
<div align="left"><a href="#" onclick="moveto(2)">主菜单2</a></div></td></tr>
<tr><td bgcolor="#99CCFF">
<div align="left"><a href="#" onclick="moveto(3)">主菜单3</a></div></td></tr>
<tr> <td bgcolor="#CCFFFF">
</table>
</div>
<div id="div1" style="position:absolute; left:-114px; top:171px; width:114px; height:107px; z-index:2; background: #FFFFCC; layer-background-color: #FFFFCC; border: 3px none #000000">
<div align="right">
<a href="#">子菜单1</a><br>
<a href="#">子菜单2</a><br>
<a href="#">子菜单3</a><br>
<a href="#">子菜单4</a><br>
<a href="#">子菜单5</a><br>
</div>
</div>
<div id="div2" style="position:absolute; left:-114px; top:200px; width:114px; height:107px; z-index:2; background: #FFFFCC; layer-background-color: #FFFFCC; border: 3px none #000000">
<div align="right">
<a href="#">子菜单1</a><br>
<a href="#">子菜单2</a><br>
<a href="#">子菜单3</a><br>
<a href="#">子菜单4</a><br>
<a href="#">子菜单5</a><br>
</div>
</div>
<div id="div3" style="position:absolute; left:-114px; top:240px; width:114px; height:107px; z-index:2; background: #FFFFCC; layer-background-color: #FFFFCC; border: 3px none #000000">
<div align="right">
<a href="#">子菜单1</a><br>
<a href="#">子菜单2</a><br>
<a href="#">子菜单3</a><br>
<a href="#">子菜单4</a><br>
<a href="#">子菜单5</a><br>
</div>
</div>
在高分加!
只是自己写的好难看得到哪里出错!! 我这里又没有脚本调试的,所以.....
<script language="Javascript">
<!--
var m=3; //定义了有多少个主菜单!
var can=new Array(); //声明一个数组,存放是否拉出子菜单的控制代码
var newdivleft=new Array() //声明一个数组,存放各图层新的“left”参数值
var olddivleft=new Array() //声明一个数组,存放初始的各图层“left”参数值
var margeleft=parseInt(document.all.div0.style.left); //声明存放拉出子菜单的左边距变量
for (i=0;i<=m;i++){ //获取上面声明的数组的初始值
objname=eval("document.all.div"+(i)+".style");
newdivleft[i]=parseInt(objname.left);
olddivleft[i]=newdivleft[i];
can[i]=0;}
function movein(x){
{ //开始拉出子菜单
newdivleft[x]+=6; //设置每次拉出6个像素
if (newdivleft[x]<(margeleft+6))
{ //如果没有拉到位,可继续拉。
thisdiv=eval("document.all.div"+(x)+".style");
thisdiv.left=newdivleft[x]; //拉一次子菜单
t1=setTimeout("movein(x)",10); //每10毫秒拉动一次子菜单
}
else
{ thisdiv.left=olddivleft[0];
clearTimeout(t1);} //如果子菜单已拉到位,则清除定时函数,停止拉动子菜单。
}
}
function moveout(x)
{
if (can[x]==0)
{ //开始推入子菜单,方法与拉出子菜单时相同,只是方向相反。
newdivleft[x]-=6;
if (newdivleft[x]>(olddivleft[x]-6))
{
thisdiv=eval("document.all.div"+(x)+".style");
thisdiv.left=newdivleft[x];
t2=setTimeout("moveout(x)",10)
}
else
{clearTimeout(t2);}
}
}
function moveto(x){
if (can[x]==0)
{
for(i=1;i<=3;i++)
{ if (can[i]==1) moveout(i); }
can[x]=1 ;
}
else
{
can[x]=0;
movein(x);
}
-->
</script>
请大哥们帮个忙:
<div id="div0" style="position:absolute; left:12px; top:151px; width:116px; height:104px; z-index:1" >
<table width="100%" border="0" height="100%" cellpadding="0">
<tr>
<td bgcolor="#FFFFCC" height="17">
<div align="left"><a href="#" onclick="moveto(1)">主菜单1</a></div></td></tr>
<tr><td bgcolor="#99FFFF">
<div align="left"><a href="#" onclick="moveto(2)">主菜单2</a></div></td></tr>
<tr><td bgcolor="#99CCFF">
<div align="left"><a href="#" onclick="moveto(3)">主菜单3</a></div></td></tr>
<tr> <td bgcolor="#CCFFFF">
</table>
</div>
<div id="div1" style="position:absolute; left:-114px; top:171px; width:114px; height:107px; z-index:2; background: #FFFFCC; layer-background-color: #FFFFCC; border: 3px none #000000">
<div align="right">
<a href="#">子菜单1</a><br>
<a href="#">子菜单2</a><br>
<a href="#">子菜单3</a><br>
<a href="#">子菜单4</a><br>
<a href="#">子菜单5</a><br>
</div>
</div>
<div id="div2" style="position:absolute; left:-114px; top:200px; width:114px; height:107px; z-index:2; background: #FFFFCC; layer-background-color: #FFFFCC; border: 3px none #000000">
<div align="right">
<a href="#">子菜单1</a><br>
<a href="#">子菜单2</a><br>
<a href="#">子菜单3</a><br>
<a href="#">子菜单4</a><br>
<a href="#">子菜单5</a><br>
</div>
</div>
<div id="div3" style="position:absolute; left:-114px; top:240px; width:114px; height:107px; z-index:2; background: #FFFFCC; layer-background-color: #FFFFCC; border: 3px none #000000">
<div align="right">
<a href="#">子菜单1</a><br>
<a href="#">子菜单2</a><br>
<a href="#">子菜单3</a><br>
<a href="#">子菜单4</a><br>
<a href="#">子菜单5</a><br>
</div>
</div>
在高分加!
只是自己写的好难看得到哪里出错!! 我这里又没有脚本调试的,所以.....
<script language="Javascript">
<!--
var m=3; //定义了有多少个主菜单!
var can=new Array(); //声明一个数组,存放是否拉出子菜单的控制代码
var newdivleft=new Array() //声明一个数组,存放各图层新的“left”参数值
var olddivleft=new Array() //声明一个数组,存放初始的各图层“left”参数值
var margeleft=parseInt(document.all.div0.style.left); //声明存放拉出子菜单的左边距变量
for (i=0;i<=m;i++){ //获取上面声明的数组的初始值
objname=eval("document.all.div"+(i)+".style");
newdivleft[i]=parseInt(objname.left);
olddivleft[i]=newdivleft[i];
can[i]=0;}
function movein(x){
{ //开始拉出子菜单
newdivleft[x]+=6; //设置每次拉出6个像素
if (newdivleft[x]<(margeleft+6))
{ //如果没有拉到位,可继续拉。
thisdiv=eval("document.all.div"+(x)+".style");
thisdiv.left=newdivleft[x]; //拉一次子菜单
t1=setTimeout("movein(x)",10); //每10毫秒拉动一次子菜单
}
else
{ thisdiv.left=olddivleft[0];
clearTimeout(t1);} //如果子菜单已拉到位,则清除定时函数,停止拉动子菜单。
}
}
function moveout(x)
{
if (can[x]==0)
{ //开始推入子菜单,方法与拉出子菜单时相同,只是方向相反。
newdivleft[x]-=6;
if (newdivleft[x]>(olddivleft[x]-6))
{
thisdiv=eval("document.all.div"+(x)+".style");
thisdiv.left=newdivleft[x];
t2=setTimeout("moveout(x)",10)
}
else
{clearTimeout(t2);}
}
}
function moveto(x){
if (can[x]==0)
{
for(i=1;i<=3;i++)
{ if (can[i]==1) moveout(i); }
can[x]=1 ;
}
else
{
can[x]=0;
movein(x);
}
-->
</script>

您所在位置: