一个关于层的问题,不知道怎么解决,请大家帮忙给看看!!!!!

henry_t 2002-10-26 02:55:33
我从网上下了一个js做的下拉多层菜单,因为目录很多,所以每次弾出时会向下延伸很多,网页中间有一个选择表单就像这个:
<select name=obj class=p1>
<option value="http://nisearch.163.com/Search?q=">网站<option value="http://search.163.com/google/Search?q=">中文网页<option value="http://search.163.com/google/Search?lang=all&q=">所有网页<option value="http://bj74.netease.com/job/php/multi_jiansuo.php?page=1&keyword=">工作<option value="http://joke.163.com/search.php?keyword=">笑话<option value="http://topsoft.163.com/software/search.php?title=">软件
</select>
但每次下拉菜单和这个选择表单发生重叠的时候,菜单就会藏在表单后面,看不到,其他的比如文本筐之类就不会有这种情况,同事说这是有关层的问题,请大家告诉我该怎么解决???我不会使用dreamwaver之类的工具,请直接教我怎么调参数,在这里谢谢大家
...全文
28 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
kelichen 2002-10-26
  • 打赏
  • 举报
回复
czgpass@163.com
快点,我要下班了
henry_t 2002-10-26
  • 打赏
  • 举报
回复
或者油箱
henry_t 2002-10-26
  • 打赏
  • 举报
回复
你有没有QQ,我好打包给你
kelichen 2002-10-26
  • 打赏
  • 举报
回复
要没有删掉那些代码的
kelichen 2002-10-26
  • 打赏
  • 举报
回复
哈哈...是不能删,干脆你把你那个页面发给我,我帮你改算了,在网页上看代码累
henry_t 2002-10-26
  • 打赏
  • 举报
回复
代码是我从网上找的,照你说的做了,菜单全部不见了,状态栏上显示该页有错误,我要绝望了
kelichen 2002-10-26
  • 打赏
  • 举报
回复
不知道你这些代码是干什么用的,如果这都是你下载下来的应该是不可以删除的,因为有些时候是需要浮动的层的。
kelichen 2002-10-26
  • 打赏
  • 举报
回复
stringx+='<div id=mmenudiv'+x+'style="cursor:'+mcursor+';position:absolute;'+'width:'+mmenuitemwidth+'px; z-index:'+(x+100)

改为:
stringx+='<div id=mmenudiv'+x+'style="cursor:'+mcursor

总之就是去掉"style="后所有的包含了“position:absolute”,“z-index”之类的的代码

你别告诉我你不清楚这些代码该怎么改


其他的自己找出来照样改就行了,代码太长了我懒的看。你是怎么生成的这些?应该不是你自己写的
henry_t 2002-10-26
  • 打赏
  • 举报
回复
还是不是很明白啊,能不能说得清楚一点???position:absolute在js里面有三个地方,到底该怎么该???我以前从没做过这类东西,所以只好让大家教我了
kelichen 2002-10-26
  • 打赏
  • 举报
回复
你这次贴的真的是很长,我看着就头晕。
<div>中的position:absolute很可能是造成你这个问题的原因,因为它会使<div>浮动在其他的内容之上。如果可以的话就去掉它试试看了
henry_t 2002-10-26
  • 打赏
  • 举报
回复
接上面
}else{
stringx += ">"+thismenuitem.caption+"</td></tr>";
}
}else{
stringx+='<tr><td height="1" background="hr.gif" onmousemove="clearTimeout(mpopTimer);"><img height="1" width="1" src="none.gif" border="0"></td></tr>\n';
}
}stringx+='</table>\n</div>'
}
}

for(var j=1;j<=mnumberofsub;j++){
thisitem=eval("msub"+j);
stringx+='<div id=msubmenudiv'+j+
' style="tag:'+thisitem.level+';cursor:'+mcursor+';position:absolute;'+
'width:'+mmenuitemwidth+'px; z-index:'+(j+200);
if(mmenuinbordercolor!=mmenuoutbordercolor&&msubedge=="0"){
stringx+=';border-left: 1px solid '+mmidoutcolor+
';border-top: 1px solid '+mmidoutcolor;}
stringx+=';border-right: 1px solid '+mmenuinbordercolor+
';border-bottom: 1px solid '+mmenuinbordercolor+';visibility:hidden" onselectstart="event.returnValue=false">\n'+
'<table width="100%" border="0" height="100%" align="center" cellpadding="0" cellspacing="2" '+
'style="'+mfonts+' border-left: 1px solid '+mmenuoutbordercolor;
if(mmenuinbordercolor!=mmenuoutbordercolor&&msubedge=="0"){
stringx+=';border-right: 1px solid '+mmidincolor+
';border-bottom: 1px solid '+mmidincolor;}
stringx+=';border-top: 1px solid '+mmenuoutbordercolor+
';padding: 4px" bgcolor='+mmenucolor+'>\n'
for(var i=0;i<thisitem.items.length;i++){
var thismenuitem=thisitem.items[i];
var imgsize="";
if(thismenuitem.sizex!="0"||thismenuitem.sizey!="0")imgsize=" width="+thismenuitem.sizex+" height="+thismenuitem.sizey;
var ifspace="";
if(thismenu.caption!="")ifspace=" ";
if(thismenuitem.hasc!=null){
stringx += "<tr><td id=mp"+thismenuitem.hasc+" class=coolButton style='border: "+mitemedge+"px solid "+mmenucolor+
"' width=100% onmouseout=mmenuitem_out(true) onmouseover=\"mmenuitem_over(msubmenudiv"+j+
",'"+thismenuitem.hasc+"',-1,"+j+","+i+");mshowsubmenu(msubmenudiv"+thismenuitem.hasc+",mp"+thismenuitem.hasc+",msubmenudiv"+j+");\""+
"><table id=mitem"+thismenuitem.hasc+" cellspacing='0' cellpadding='0' border='0' width='100%' style='"+mfonts+"'><tr><td ";
if(thismenuitem.pos=="0"){
stringx += "><img align=absmiddle src='"+thismenuitem.img+"'"+imgsize+">"+ifspace+thismenuitem.caption+"</td><td";
}else if(thismenuitem.pos=="1"){
stringx += ">"+thismenuitem.caption+ifspace+"<img align=absmiddle src='"+thismenuitem.img+"'"+imgsize+"></td><td";
}else if(thismenuitem.pos=="2"){
stringx += "background='"+thismenuitem.img+"'>"+thismenuitem.caption+"</td><td background='"+thismenuitem.img+"'";
}else{
stringx += ">"+thismenuitem.caption+"</td><td";
}
stringx += " align=right width='1'><font face='Webdings' style='font-size: 6pt'>4</font></td></tr></table></td></tr>\n";
}else if(!thismenuitem.isline){
stringx += "<tr><td class=coolButton style='border: "+mitemedge+"px solid "+mmenucolor+
"' width=100% height=15px onmouseover=\"mmenuitem_over(msubmenudiv"+j+
",false,-1,"+j+","+i+");\" onmouseout=mmenuitem_out() onmousedown=mmenuitem_down() onmouseup=";
stringx += "mmenuitem_up();mexec3("+j+","+i+"); ";
if(thismenuitem.pos=="0"){
stringx += "><img align=absmiddle src='"+thismenuitem.img+"'"+imgsize+">"+ifspace+thismenuitem.caption+"</td></tr>";
}else if(thismenuitem.pos=="1"){
stringx += ">"+thismenuitem.caption+ifspace+"<img align=absmiddle src='"+thismenuitem.img+"'"+imgsize+"></td></tr>";
}else if(thismenuitem.pos=="2"){
stringx += "background='"+thismenuitem.img+"'>"+thismenuitem.caption+"</td></tr>";
}else{
stringx += ">"+thismenuitem.caption+"</td></tr>";
}
}else{
stringx+='<tr><td height="1" background="hr.gif" onmousemove="clearTimeout(mpopTimer);"><img height="1" width="1" src="none.gif" border="0"></td></tr>\n';
}
}
stringx+='</table>\n</div>'
}
document.write("<div align='left'>"+stringx+"</div>");
}
henry_t 2002-10-26
  • 打赏
  • 举报
回复
………………(下面的最像有关系,我分为两段回复)
function mwritetodocument(){
var mwb=1;
var stringx='<div id="mposflag" style="position:absolute;"></div><table id=mmenutable border=0 cellpadding=3 cellspacing=2 width='+mmenuwidth+' height='+mmenuheight+' bgcolor='+mmenucolor+
' onselectstart="event.returnValue=false"'+
' style="cursor:'+mcursor+';'+mfonts+
' border-left: '+mwb+'px solid '+mmenuoutbordercolor+';'+
' border-right: '+mwb+'px solid '+mmenuinbordercolor+'; '+
'border-top: '+mwb+'px solid '+mmenuoutbordercolor+'; '+
'border-bottom: '+mwb+'px solid '+mmenuinbordercolor+'; padding:0px"><tr>'
for(var x=0;x<mmenus.length;x++){
var thismenu=mmenus[x];
var imgsize="";
if(thismenu.sizex!="0"||thismenu.sizey!="0")imgsize=" width="+thismenu.sizex+" height="+thismenu.sizey;
var ifspace="";
if(thismenu.caption!="")ifspace=" ";
stringx += "<td nowrap class=coolButton id=mMenu"+x+" style='border: "+mitemedge+"px solid "+mmenucolor+
"' width="+mmenuunitwidth+"px onmouseover=mmenu_over(mmenudiv"+x+
//"' onmouseover=mmenu_over(mmenudiv"+x+
","+x+") onmouseout=mmenu_out("+x+
") onmousedown=mmenu_down(mmenudiv"+x+","+x+")";
if(thismenu.command!=""){
stringx += " onmouseup=mmenu_up();mexec2("+x+");";
}else{
stringx += " onmouseup=mmenu_up()";
}
if(thismenu.pos=="0"){
stringx += " align=center><img align=absmiddle src='"+thismenu.img+"'"+imgsize+">"+ifspace+thismenu.caption+"</td>";
}else if(thismenu.pos=="1"){
stringx += " align=center>"+thismenu.caption+ifspace+"<img align=absmiddle src='"+thismenu.img+"'"+imgsize+"></td>";
}else if(thismenu.pos=="2"){
stringx += " align=center background='"+thismenu.img+"'> "+thismenu.caption+" </td>";
}else{
stringx += " align=center> "+thismenu.caption+" </td>";
}
stringx += "";
}
stringx+="<td width=*> </td></tr></table>";


for(var x=0;x<mmenus.length;x++){
thismenu=mmenus[x];
if(x==5){
stringx+='<div id=mmenudiv'+x+' style="visiable:none"></div>';
}else{
stringx+='<div id=mmenudiv'+x+
' style="cursor:'+mcursor+';position:absolute;'+
'width:'+mmenuitemwidth+'px; z-index:'+(x+100);
if(mmenuinbordercolor!=mmenuoutbordercolor&&msubedge=="0"){
stringx+=';border-left: 1px solid '+mmidoutcolor+
';border-top: 1px solid '+mmidoutcolor;}
stringx+=';border-right: 1px solid '+mmenuinbordercolor+
';border-bottom: 1px solid '+mmenuinbordercolor+';visibility:hidden" onselectstart="event.returnValue=false">\n'+
'<table width="100%" border="0" height="100%" align="center" cellpadding="0" cellspacing="2" '+
'style="'+mfonts+' border-left: 1px solid '+mmenuoutbordercolor;
if(mmenuinbordercolor!=mmenuoutbordercolor&&msubedge=="0"){
stringx+=';border-right: 1px solid '+mmidincolor+
';border-bottom: 1px solid '+mmidincolor;}
stringx+=';border-top: 1px solid '+mmenuoutbordercolor+
';padding: 4px" bgcolor='+mmenucolor+'>\n'
for(var i=0;i<thismenu.items.length;i++){
var thismenuitem=thismenu.items[i];
var imgsize="";
if(thismenuitem.sizex!="0"||thismenuitem.sizey!="0")imgsize=" width="+thismenuitem.sizex+" height="+thismenuitem.sizey;
var ifspace="";
if(thismenu.caption!="")ifspace=" ";
if(thismenuitem.hasc!=null){
stringx += "<tr><td id=mp"+thismenuitem.hasc+" class=coolButton style='border: "+mitemedge+"px solid "+mmenucolor+
"' width=100% onmouseout=mmenuitem_out(true) onmouseover=\"mmenuitem_over(mmenudiv"+x+
",'"+thismenuitem.hasc+"',"+x+",-1,"+i+");mshowsubmenu(msubmenudiv"+thismenuitem.hasc+",mp"+thismenuitem.hasc+",mmenudiv"+x+");\""+
"><table id=mitem"+thismenuitem.hasc+" cellspacing='0' cellpadding='0' border='0' width='100%' style='"+mfonts+"'><tr><td ";
if(thismenuitem.pos=="0"){
stringx += "><img align=absmiddle src='"+thismenuitem.img+"'"+imgsize+">"+ifspace+thismenuitem.caption+"</td><td";
}else if(thismenuitem.pos=="1"){
stringx += ">"+thismenuitem.caption+ifspace+"<img align=absmiddle src='"+thismenuitem.img+"'"+imgsize+"></td><td";
}else if(thismenuitem.pos=="2"){
stringx += "background='"+thismenuitem.img+"'>"+thismenuitem.caption+"</td><td background='"+thismenuitem.img+"'";
}else{
stringx += ">"+thismenuitem.caption+"</td><td";
}
stringx += " align=right width='1'><font face='Webdings' style='font-size: 6pt'>4</font></td></tr></table></td></tr>\n";
}else if(!thismenuitem.isline){
stringx += "<tr><td class=coolButton style='border: "+mitemedge+"px solid "+mmenucolor+
"' width=100% height=15px onmouseover=\"mmenuitem_over(mmenudiv"+x+
",false,"+x+",-1,"+i+");\" onmouseout=mmenuitem_out() onmousedown=mmenuitem_down() onmouseup=";
stringx += "mmenuitem_up();mexec("+x+","+i+"); ";
if(thismenuitem.pos=="0"){
stringx += "><img align=absmiddle src='"+thismenuitem.img+"'"+imgsize+">"+ifspace+thismenuitem.caption+"</td></tr>";
}else if(thismenuitem.pos=="1"){
stringx += ">"+thismenuitem.caption+ifspace+"<img align=absmiddle src='"+thismenuitem.img+"'"+imgsize+"></td></tr>";
}else if(thismenuitem.pos=="2"){
stringx += "background='"+thismenuitem.img+"'>"+thismenuitem.caption+"</td></tr>";

henry_t 2002-10-26
  • 打赏
  • 举报
回复
html 代码如下, 引用菜单js:<script language=javascript src=menu.js></script>


<html>
<head>
<title>com</title>
<script language=javascript src=menu.js></script>
</head>
<body aLink="#cc0000" bgColor="#ffffff" leftMargin="0" link="#cc0000" text="#000000" topMargin="0" >

<select name=obj class=p1>
<option value="http://nisearch.163.com/Search?q=">网站<option value="http://search.163.com/google/Search?q=">中文网页<option value="http://search.163.com/google/Search?lang=all&q=">所有网页<option value="http://nisearch.163.com/Search?in=news&q=">新闻<option value="http://stock2.163.com/stock/show_full.php?code=">股票<option value="http://bj74.netease.com/job/php/multi_jiansuo.php?page=1&keyword=">工作<option value="http://joke.163.com/search.php?keyword=">笑话<option value="http://topsoft.163.com/software/search.php?title=">软件</select>
</body>
</html>

js 代码有点长,我把我认为有关层的贴出来

var mmenus = new Array();
var misShow = new Boolean();
misShow=false;
var misdown = new Boolean();
misdown=false;
var mnumberofsub=0;
var musestatus=false;
var mpopTimer = 0;
mmenucolor='Menu';
mfontcolor='MenuText';
mmenuoutcolor='#B5BED6';
mmenuincolor='#B5BED6';
mmenuoutbordercolor='#000000';
mmenuinbordercolor='#000000';
mmidoutcolor='#8D8A85';
mmidincolor='#8D8A85';
mmenuovercolor='MenuText';
mitemedge='1';
msubedge='0';
mmenuunitwidth=100;
mmenuitemwidth=110;
mmenuheight=25;
mmenuwidth='100%';
mmenuadjust=0;
mmenuadjustV=0;
mfonts='font-family: 宋体; font-size: 9pt; color: MenuText; ';mcursor='default';
……………………
function mallhide(){
for(var nummenu=0;nummenu<mmenus.length;nummenu++){
var themenu=document.all['mMenu'+nummenu]
var themenudiv=document.all['mmenudiv'+nummenu]
mnochange(themenu);
mmenuhide(themenudiv);
}
for(nummenu=1;nummenu<=mnumberofsub;nummenu++){
var thesub=document.all['msubmenudiv'+nummenu]
msubmenuhide(thesub);
mnochange(document.all['mp'+nummenu]);
document.all["mitem"+nummenu].style.color=mfontcolor;
}
}
function mmenuhide(menuid){

menuid.style.visibility='hidden';
misShow=false;
}
function msubmenuhide(menuid){

menuid.style.visibility='hidden';
}
function mmenushow(menuid,pid){

menuid.style.left=mposflag.offsetLeft+pid.offsetLeft+mmenuadjust;menuid.style.top=mposflag.offsetTop+mmenutable.offsetHeight+mmenuadjustV;
if(mmenuitemwidth+parseInt(menuid.style.left)>document.body.clientWidth+document.body.scrollLeft)
menuid.style.left=document.body.clientWidth+document.body.scrollLeft-mmenuitemwidth;
menuid.style.visibility='visible';
misShow=true;
}
function mshowsubmenu(menuid,pid,rid){

menuid.style.left=pid.offsetWidth+rid.offsetLeft;
menuid.style.top=pid.offsetTop+rid.offsetTop-3;
if(mmenuitemwidth+parseInt(menuid.style.left)>document.body.clientWidth+document.body.scrollLeft)
menuid.style.left=document.body.clientWidth+document.body.scrollLeft-mmenuitemwidth;
menuid.style.visibility='visible';
}
function mmenu_over(menuid,x){
toel = getReal(window.event.toElement, "className", "coolButton");
fromel = getReal(window.event.fromElement, "className", "coolButton");
if (toel == fromel) return;
if(x==5){
misShow = false;
mallhide();
mtoout(eval("mMenu"+x));
}else{
if(!misShow){mtoout(eval("mMenu"+x));}else{
mallhide();
mtoin(eval("mMenu"+x));
mmenushow(menuid,eval("mMenu"+x));
}
}
clearTimeout(mpopTimer);
}
function mmenu_out(x){
toel = getReal(window.event.toElement, "className", "coolButton");
fromel = getReal(window.event.fromElement, "className", "coolButton");
if (toel == fromel) return;
if (misShow){
mtoin(eval("mMenu"+x));
}else{
mnochange(eval("mMenu"+x));
}
mpopOut()
}
function mmenu_down(menuid,x){
if(misShow){
mmenuhide(menuid);
mtoout(eval("mMenu"+x));
}
else{
mtoin(eval("mMenu"+x));
mmenushow(menuid,eval("mMenu"+x));
misdown=true;
}
}

kelichen 2002-10-26
  • 打赏
  • 举报
回复
把那一段的代码都贴出来吧,光看这一段是看不出什么问题的

87,942

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧