Posted in Javascript onMarch 05, 2013
先来看看效果:
具体的功能是:
1.页面上面最多只有一个是显示全部内容的。
2.当自己处于全部显示的时候,点击自己的收起,自己收起。
3.当自己处于全部显示的时候,点击其他的展开是,自己内容隐藏,原来的"收起"变为"展开"
而被点击的选项则内容全部显示,"展开"变为"收起"
=================================================
部分代码:
=================================================
<tbody> <input type="hidden" id="record" value="${qr.count }"> <c:forEach items="${qr.results }" var="info" varStatus="index"> <tr id="user_info_${info.id }"> <td class="userWrapper_right_collect"> <p class="ml20 clearfix mb10"> <strong class="ex_green_fg mr10 fl">${info.sender }</strong> <span id="span_content_${info.id }" ${index.count eq 1 ? "class='fl w500'" : "class='fl symbleDot w500'" }>${info.content }</span> </p> <a href="javascript:void(0)" onclick="cancelThisInfo(${info.id});" class="fr mr20 ex_green_fg">删除</a> <span class="fr ml5 mr5">|</span> <a href="javascript:void(0)" class="fr ex_green_fg" id="a_${info.id }" name="${index.count eq 1 ? '1' : '0' }" onclick="infoContent('${info.id}');"> <c:if test="${index.count eq 1 }" var="up"> <span id="span_${info.id }" class="ex_arrow ex_arrowUp mr5"> </span>收起 </c:if> <c:if test="${!up }"> <span class="ex_arrow ex_arrowDown mr5"> </span>展开 </c:if> </a> <span class="fr mr10 gray"><fmt:formatDate value="${info.createTime}" pattern="yyyy-MM-dd HH:mm:ss" /></span> </td> </tr> </c:forEach> </tbody>
js代码
/** * 展开通知和收起通知<br> * 1.点击某一个id的展开功能时候,首先所有的关闭,再展开id通知,展开id时候,class='fl w500' class="ex_arrow ex_arrowUp mr5" 收起 * 2.点击收起某一个id时候,class='fl symbleDot w500' class="ex_arrow ex_arrowDown mr5" 展开 * @date 2013-3-5 * @author xhw * * @param id */ function infoContent(id) { var a_name = $("#a_" + id).attr("name"); var record = $("#record").val(); if(id == null || id == ""){ alert("请求出错!"); }else if(id == record){ //本身对象(现在点击的和上一步操作的对象是同一个) if(a_name == "0"){ $("#span_content_" + id).attr("class","fl w500"); $("#a_" + id).html("<span class='ex_arrow ex_arrowUp mr5'></span>收起"); $("#a_" + id).attr("name", "1"); }else if(a_name == "1"){ $("#span_content_" + id).attr("class","fl symbleDot w500"); $("#a_" + id).html("<span class='ex_arrow ex_arrowDown mr5'></span>展开"); $("#a_" + id).attr("name", "0"); //$("#record").attr("value",id); } }else if(id != record){ //新对象id,上一次点击对象record var older_name = $("#a_"+record).attr("name"); //上一次点击的对象 if(older_name == "0"){ $("#span_content_" + record).attr("class","fl w500"); $("#a_" + record).html("<span class='ex_arrow ex_arrowUp mr5'></span>收起"); $("#a_" + record).attr("name", "1"); }else if(older_name == "1"){ $("#span_content_" + record).attr("class","fl symbleDot w500"); $("#a_" + record).html("<span class='ex_arrow ex_arrowDown mr5'></span>展开"); $("#a_" + record).attr("name", "0"); } //新对象 if(a_name == "0"){ $("#span_content_" + id).attr("class","fl w500"); $("#a_" + id).html("<span class='ex_arrow ex_arrowUp mr5'></span>收起"); $("#a_" + id).attr("name", "1"); }else if(a_name == "1"){ $("#span_content_" + id).attr("class","fl symbleDot w500"); $("#a_" + id).html("<span class='ex_arrow ex_arrowDown mr5'></span>展开"); $("#a_" + id).attr("name", "0"); } $("#record").attr("value",id); } };
自己写了一个展开和收起的多更能型的js效果
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@