这个代码加上w3c就不好用了,帮忙看看

wukunrong 2008-11-26 02:52:32
下面的代码加上 <!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>::E信::</title>
<link href="homesite.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
body { font-size: 10pt}
.main {background-color:#DDDDDD}
.sub {background-color:#EAEAEA;padding-left:1em}
-->
</style>

<script>
var count=0;//做计数器
var limit=new Array();//用于记录当前显示的哪几个菜单
var countlimit=1;//同时打开菜单数目,可自定义
function expandIt(el) {
obj = eval("sub" + el);
if (obj.style.display == "none") {
obj.style.display = "block";//显示子菜单
if (count<countlimit) {//限制1个
limit[count]=el;//录入数组
count++;
}
else {
eval("sub" + limit[0]).style.display = "none";
for (i=0;i<limit.length-1;i++) {limit[i]=limit[i+1];}//数组去掉头一位,后面的往前挪一位
limit[limit.length-1]=el;
}
}
else {
obj.style.display = "none";
var j;
for (i=0;i<limit.length;i++) {if (limit[i]==el) j=i;}//获取当前点击的菜单在limit数组中的位置
for (i=j;i<limit.length-1;i++) {limit[i]=limit[i+1];}//j以后的数组全部往前挪一位
limit[limit.length-1]=null;//删除数组最后一位
count--;
}
}

</script>
</head>

<body bgcolor="#666699" text="#000000" leftmargin="0" topmargin="0" scroll="no">

<div class=main id=main1 onclick=expandIt(1)>menu1
<div class=sub id=sub1 style="display:none">sub1<br>
sub2<br>
sub3</div>
</div>
<div class=main id=main2 onclick=expandIt(2)>menu2
<div class=sub id=sub2 style="display:none">sub2<br>
sub2<br>
sub3</div>
</div>
<div class=main id=main3 onclick=expandIt(3)>menu3
<div class=sub id=sub3 style="display:none">sub1<br>
sub2<br>
sub3</div>
</div>
<div class=main id=main4 onclick=expandIt(4)>menu4
<div class=sub id=sub4 style="display:none">sub1<br>
sub2<br>
sub3</div>
</div>
<div class=main id=main5 onclick=expandIt(5)>menu5
<div class=sub id=sub5 style="display:none">sub1<br>
sub2<br>
sub3</div>
</div>
</body>
</html>
...全文
119 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
2008-11-26
  • 打赏
  • 举报
回复

window.onload = function(){
expandIt(1);
};
wukunrong 2008-11-26
  • 打赏
  • 举报
回复
谢谢,原来我加错了,加成了
obj = eval (getElementByid("sub" + el));

还有一个小问题,要当前默认开一个子菜单怎么弄呢?
2008-11-26
  • 打赏
  • 举报
回复

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>::E:: </title>
<link href="homesite.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
body { font-size: 10pt}
.main {background-color:#DDDDDD}
.sub {background-color:#EAEAEA;padding-left:1em}
-->
</style>

<script>
var count=0;//做计数器
var limit=new Array();//用于记录当前显示的哪几个菜单
var countlimit=1;//同时打开菜单数目,可自定义
function $(id){
return document.getElementById(id);
}
function expandIt(el) {
obj = $("sub" + el);
if (obj.style.display == "none") {
obj.style.display = "block";//显示子菜单
if (count <countlimit) {//限制1个
limit[count]=el;//录入数组
count++;
}else {
$("sub" + limit[0]).style.display = "none";
for (i=0;i <limit.length-1;i++) {limit[i]=limit[i+1];}//数组去掉头一位,后面的往前挪一位
limit[limit.length-1]=el;
}
}else {
obj.style.display = "none";
var j;
for (i=0;i <limit.length;i++) {if (limit[i]==el) j=i;}//获取当前点击的菜单在limit数组中的位置
for (i=j;i <limit.length-1;i++) {limit[i]=limit[i+1];}//j以后的数组全部往前挪一位
limit[limit.length-1]=null;//删除数组最后一位
count--;
}
}

</script>
</head>

<body bgcolor="#666699" text="#000000" leftmargin="0" topmargin="0" scroll="no">

<div class="main" id="main1" onclick="expandIt(1)">menu1
<div class="sub" id="sub1" style="display:none">sub1 <br>
sub2 <br>
sub3 </div>
</div>
<div class="main" id="main2" onclick="expandIt(2)">menu2
<div class="sub" id="sub2" style="display:none">sub2 <br>
sub2 <br>
sub3 </div>
</div>
<div class=main id=main3 onclick=expandIt(3)>menu3
<div class=sub id=sub3 style="display:none">sub1 <br>
sub2 <br>
sub3 </div>
</div>
<div class=main id=main4 onclick=expandIt(4)>menu4
<div class=sub id=sub4 style="display:none">sub1 <br>
sub2 <br>
sub3 </div>
</div>
<div class=main id=main5 onclick=expandIt(5)>menu5
<div class=sub id=sub5 style="display:none">sub1 <br>
sub2 <br>
sub3 </div>
</div>
</body>
</html>

87,910

社区成员

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

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