一个小问题 本人新手 请高手指点 来着有分 在线等紧急

美丽大道 2009-07-20 09:32:17
如题 我现在有个网页, 网页里面有个地方想用js 做一个类似下拉的特效, 但是要是有好几个项目类型的组以后 就会出现错乱。。。 请高手指点指点,


下面是我们写的方法,不是很好用,要是高手能帮忙实现,或者给出例子 真的不胜感激。 确实是新手。。。。本人一直做得winform程序。。。

function shoppingcat1(id,key){
var content=document.getElementById(id);
var key = document.getElementById(key);
var t=content.style;
if(t.height==""||t.height==0)
t.height=minheight;
var h=parseInt(t.height);
if(isopen){
h+=s;
t.height=h+"px";
if(h<maxheight){
setTimeout("shoppingcat('"+id+"','"+key+"');",1);
}else{
isopen=0
key.innerHTML="<img src='images/x-zk-jian.jpg'/>";
}
}else{
h-=s;
t.height=h+"px";
if(h>minheight){
setTimeout("shoppingcat('"+id+"','"+key+"');",1);
}else{
isopen=1
key.innerHTML="<img src='images/x-zk-jia.jpg' />";
}
}
}






<!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=gb2312" />
<title>管理系统</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<script src="js/js.js" type="text/javascript"></script>
</head>

<body>
<div class="x-head"><img src="images/x-head.jpg" /></div>
<div class="x-tit">河南油田科技项目管理信息系统 - 网站功能一览</div>
<div class="x-mid">
<div class="x-mid-list FL">
<div class="x-mid-list-lm">
<h3>项目计划</h3>
<ul>
<li><a href="#">项目立项审查</a></li>
<li>
<div id="content" aa="1">
<font style="color:#FF0000; margin-left:18px;">计划编制与审查</font>
<span id="key" onclick="shoppingcat('content','key');"><img src="images/x-zk-jia.jpg"></span>
<ul>
<li><a href="#">年计划审查</a></li>
<li><a href="#">编制计划</a></li>
<li><a href="#">生成正式计划</a></li>
<li><a href="#">查看计划</a></li>
</ul>
</div>
</li>
<li><a href="#">立项计划</a></li>
</ul>
</div>

<div class="x-mid-list FL">
<div class="x-mid-list-lm">
<h3>项目计划</h3>
<ul>
<li><a href="#">项目立项审查</a></li>
<li>
<div id="content1" aa="1">
<font style="color:#FF0000; margin-left:18px;">计划编制与审查</font>
<span id="key1" onclick="shoppingcat('content1','key1');"><img src="images/x-zk-jia.jpg"></span>
<ul>
<li><a href="#">年计划审查</a></li>
<li><a href="#">编制计划</a></li>
<li><a href="#">生成正式计划</a></li>
<li><a href="#">查看计划</a></li>
</ul>
</div>
</li>
<li><a href="#">立项计划</a></li>
</ul>
</div>

<div class="x-mid-list FL">
<div class="x-mid-list-lm">
<h3>项目计划</h3>
<ul>
<li><a href="#">项目立项审查</a></li>
<li>
<div id="content2" aa="1">
<font style="color:#FF0000; margin-left:18px;">计划编制与审查</font>
<span id="key2" onclick="shoppingcat('content2','key2');"><img src="images/x-zk-jia.jpg"></span>
<ul>
<li><a href="#">年计划审查</a></li>
<li><a href="#">编制计划</a></li>
<li><a href="#">生成正式计划</a></li>
<li><a href="#">查看计划</a></li>
</ul>
</div>
</li>
<li><a href="#">立项计划</a></li>
</ul>
</div>

</div>
<div class="x-mid-list FL" style="margin:0px 10px;">1</div>
<div class="x-mid-list FL" style="margin:0px 10px 0 0;">1</div>
<div class="x-mid-list FL">1</div>
</div>
</body>
</html>
...全文
129 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
美丽大道 2009-07-31
  • 打赏
  • 举报
回复
我试了 效果还算不错 不过我希望能单击哪些字所在的框框任意位置都能展开, 而不是只单击那几个字的时候。。。。

怎么实现呢 。。。。


js基本属于一点都不会。。 麻烦高手了。
makeppy 2009-07-21
  • 打赏
  • 举报
回复
UP
xiongzhijian 2009-07-20
  • 打赏
  • 举报
回复
up
helanye 2009-07-20
  • 打赏
  • 举报
回复
up
美丽大道 2009-07-20
  • 打赏
  • 举报
回复
另外我想知道 有没有更好的方法 这样的话 加入高度不一样了 我就需要很多参数了
美丽大道 2009-07-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lihui_shine 的回复:]
1。key控制content的显示和隐藏,肯定得在content的外面
2。拿content的高度是用document.getElementById("content").offsetHeight;
[/Quote]

能不能帮我给改下。。。我对网页是真的不太懂。。。谢谢高手。~~~
浪尖赏花 2009-07-20
  • 打赏
  • 举报
回复
1。key控制content的显示和隐藏,肯定得在content的外面
2。拿content的高度是用document.getElementById("content").offsetHeight;
unling 2009-07-20
  • 打赏
  • 举报
回复
顶楼上的 回答的很好。。
美丽大道 2009-07-20
  • 打赏
  • 举报
回复
h = content.offsetHeight;
content.maxheight = h;


这个offsetHeight 是什么意思啊 为什么他和content height会有影响 这个h一直都是一个值 现在的状态是 要么单击了 它伸展不开 要么他刚开始就是全部展开的没法默认是收缩状态。。。


这个是css的代码


@charset "gb2312";
* { margin:0px; padding:0px;}
body { color:#333333; font-size:12px; font:"宋体"; background:url(../images/x-head-bg.jpg) repeat-x top;}
a { color: #333333; text-decoration: none;}
a:hover { text-decoration: underline; color: #333333;}
ul li { list-style:none; list-style-type:none;}
img { border:0px;}
h1,h2,h3,h4,h5,h6 { font-size:14px; font-weight:bold; }


.FL { float:left; display:inline; overflow:hidden;}
.FR { float:right; display:inline; overflow:hidden;}

.x-head,.x-tit,.x-mid
{ margin:auto; overflow:hidden;}



.x-head{ height:80px; width:980px;}
.x-tit{ height:25px; width:980px; font-size:12px; line-height:25px; color:#000000; text-align:left;}

.x-mid{ height:auto; width:980px; padding-top:20px;}
.x-mid-list{ height:auto; width:235px;}
.x-mid-list-lm{ height:auto; width:100%; margin-bottom:10px;}
.x-mid-list-lm h3{ height:18px; width:100%;text-align:left; padding:8px 0 0 22px;color:#0a256a; background:url(../images/x-tit.jpg) no-repeat; border-bottom:1px #a1c2f2 solid; float:left;}
.x-mid-list-lm ul{ height:100%; width:228px; font-size:12px; float:left; background-color:#fafcfe; border:1px #a1c2f2 solid; border-top:none; padding-left:5px; padding-top:6px;}
.x-mid-list-lm li{ width:100%;float:left; display:list-item; float:left; padding:3px 0 4px 0;}
.x-mid-list-lm li a{text-decoration: none; color: #004499; padding-left:18px;background:url(../images/x-ico-a.jpg) left no-repeat; background-position:3px 3px;}
.x-mid-list-lm li a:hover{text-decoration: none;color: #ff0000; background:url(../images/x-ico-hover.jpg) left no-repeat; background-position:3px 3px;}

#content
{font-size: 12px;width: 200px; overflow:hidden;}


#key,#key1
{ color: red;margin-top:-14px; float:left;}
span{ cursor:pointer; float:right;}






美丽大道 2009-07-20
  • 打赏
  • 举报
回复
楼上的高手 我研究了半天 发现 key.isopen 这个是什么意思 没有这个属性吧 什么时候怎么给他赋值啊

87,904

社区成员

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

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