原生js实现简单的展开收缩
2016-05-27 09:26
441 查看
<ul> <li> <a href="javascript:"> <i class="icon"></i> <span>我的好友</span> </a> <div> <p>张三</p> <p>李四</p> </div> </li> <li> <a href="javascript:"> <i class="icon"></i> <span>我的企业</span> </a> <div> <p>企业1</p> <p>企业2</p> </div> </li> <li> <a href="javascript:"> <i class="icon"></i> <span>黑名单</span> </a> <div> <p>黑名单1</p> <p>黑名单2</p> </div> </li> </ul>
body{ font-size: 12px; margin: 50px 400px; } *{ padding: 0; margin: 0; } ul{ width: 120px; border: 1px solid #e6e6e6; background: #fff; list-style: none; } ul>li>a{ display: block; padding:5px 12px; background: #f2f2f2; text-decoration: none; color: #000; font-size: 14px; } ul>li .icon{ display: inline-block; width: 6px; height: 9.5px; background: url("img/xia-not-selected.png") no-repeat ; background-size: 6px 9.5px; } ul>li .icon-two{ display: inline-block; width: 9.5px; height: 6px; background: url("img/xia-selected.png")no-repeat; background-size: 9.5px 6px; } li>div{ display: none; } li>div>p{ padding: 5px 0 5px 16px ; border-bottom:1px solid #f2f2f2; cursor: pointer; } .active{ background: chocolate; }
window.onload=function () { var an=document.getElementsByTagName("a"); var Div=document.getElementsByTagName("div"); var icon=document.getElementsByTagName("i"); var active=document.getElementsByTagName("p"); for(var i=0;i<an.length;i++){ an[i].index=i; active[i].index=i; an[i].onclick=function () { if(icon[this.index].className=="icon-two"){ icon[this.index].className="icon"; Div[this.index].style.display="none"; }else { for(var j=0;j<an.length;j++){ icon[j].index=j; Div[j].index=j; icon[j].className="icon"; Div[j].style.display="none"; } icon[this.index].className="icon-two"; Div[this.index].style.display="block"; } }; for(var s=0; s<active.length;s++){ active[s].index=s; active[s].onclick=function () { for(var k=0;k<active.length;k++){ active[k].className=""; } active[this.index].className="active"; } } } }
相关文章推荐
- js实现div模拟模态对话框展现URL内容
- 原生js获取鼠标坐标方法全面讲解:clientX/Y,pageX/Y,offsetX/Y,layerX/Y,screenX/Y
- 基于JS实现密码框(password)中显示文字提示功能代码
- SSM框架下,Jsp页面提交请求及action获取值得问题
- js跨域问题浅析及解决方法优缺点对比
- 13个JavaScript图表(JS图表)图形绘制插件【转】
- 13个JavaScript图表(JS图表)图形绘制插件【转】
- 【DRP分销】--- JSP的四个常用对象的作用域
- javascript笔记:函数的定义与调用
- 用JS获取地址栏参数的方法
- java和javaScript区别简单理解
- [RxJS] Transformation operator: scan
- JSP系列:(4)JSP进阶-EL表达式和JSP标签
- Phaser.js音频资源处理篇
- Phaser.js事件系统及用户交互篇
- 理清JavaScript正则表达式--上篇
- Convention插件的使用(会涉及content目录,jsp必须放入这个下面才能映射成功基于注解的配置)
- javascript的变量声明和函数声明提升
- js通过location.search来获取页面传来的参数
- JS复制内容到剪切板