求js代码,点击展开,点击关闭。


假如html代码如下

<div class="list">
    <h1><a class="open">点击展开</a></h1>
    <div class="box">
        <p>----------</p>
        <a class="close">点击关闭</a>
    </div>
</div>

jquery代码:

$(function(){
    $(".open").click(function(){
        仿谨配var i=$(".list .open").index($(this));//获取点击open在页面中open类的序列
        if($("#show").length>0)//判断是否存在显示元素id show
        {
           if($(".list .box:eq("+i+")").attr("id")!="show")//判断当前的box是否已显示
           {
                $("#show").attr("id","");
   晌橘         }
        }
        $(".list .box:eq("+i+")").attr("id","show");
    })
    $(".close").click(function(){
        var i=$(".list .close").index($(this));
        $(".list .box:eq("+i+")").attr("备指id","");
    })
})

这样对应的css类似如下

.box{display:none}
#show{display:block}

.box默认隐藏 被附加id为show后就显示


因为你的列表内容应该是数据绑定生成的,可以定义相同class,上面是感觉比较通用的写法

手写的,没有测试


var tag="off";//李答记录开关状态
function test(obj){
//打开
if(tag=="off"){
obj.style.height="150px";//展开的高度
tag="on";/余烂/开关设为打开状态
}else{
obj.style.height="0px";//高哪毁慧度设为0
obj.style.display="none";//隐藏
tag="off";//开关设为关闭
}
}
这个是层的属性和鼠标做蠢历的单机事件集合即可。纯搜属性display(none:隐藏,block:显示),onclick调用的方法中将档慧对象的display切换即可。