JavaScript实现QQ列表展开收缩扩展功能


Posted in Javascript onOctober 30, 2017

本文实例为大家分享了js实现QQ列表展开收缩扩展展示的具体代码,供大家参考,具体内容如下

效果图:

JavaScript实现QQ列表展开收缩扩展功能

代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
ul,h2{margin:0; padding:0;}
li{list-style-type:none;}
#list{margin:0 auto; border:#333 solid 1px; width:250px;}
#list h2 {background: url(../img/ico1.gif) no-repeat 5px 14px #0C6; text-indent:20px; height:32px; line-height:32px;}
#list ul li{text-indent:25px; border-bottom:#333 solid 1px; line-height:24px; height:23px; }
#list .active{background: url(../img/ico2.gif) no-repeat 5px 14px #693; text-indent:20px; height:30px; line-height:30px;}
#list ul{display:none;}
.hover{background:#CFC;}
</style>
<script>
window.onload = function(){
var oUl = document.getElementById("list");
var aUl =oUl.getElementsByTagName("ul");
var aH2 = oUl.getElementsByTagName("h2");
var aLi = null;
var arrLi = [];
var that = null;
for(i=0;i<aH2.length;i++){
 aH2[i].index = i;
 aH2[i].onclick = function(){
 if(this.className==''){
 for(i=0;i<aH2.length;i++){
aH2[i].className='';
aUl[i].style.display='none';
 }
this.className='active';
aUl[this.index].style.display = 'block';
}else{
this.className='';
aUl[this.index].style.display='none';
 }
             }
 }
for(i=0;i<aUl.length;i++){
  aLi =aUl[i].getElementsByTagName("li");
 for(j=0;j<aLi.length;j++){
  arrLi.push(aLi[j]);
 }
}
for(var i=0;i<arrLi.length;i++){
 arrLi[i].onclick = function(){
  for(i=0; i<arrLi.length;i++){ 
arrLi[i].className='';
 }
this.className = 'hover';
}
}

};
</script>
</head>


<body>
<ul id="list">
<li class="lis">
  <h2>我的好友</h2>
  <ul>
  <li>张三</li>
   <li>张四</li>
   <li>张五</li>
   <li>张六</li>
  </ul>
 </li>
 <li class="lis">
 <h2>企业好友</h2>
  <ul>
  <li>李四</li>
   <li>李小四</li>
   <li>李四二</li>
   <li>李毅</li>
   <li>李二</li>
  </ul>
 </li>
 <li class="lis">
 <h2>黑名单</h2>
  <ul>
  <li>张三</li>
  <li>李四</li>
  </ul>
 </li>
</ul>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
通过JavaScript控制字体大小的代码
Oct 04 Javascript
js闭包引起的事件注册问题介绍
Mar 29 Javascript
基于JavaScript实现轮播图代码
Jul 14 Javascript
谈谈JS中常遇到的浏览器兼容问题和解决方法
Dec 17 Javascript
JS中的数组转变成JSON格式字符串的方法
May 09 Javascript
SpringMVC简单整合Angular2的示例
Jul 31 Javascript
Webpack优化配置缩小文件搜索范围
Dec 25 Javascript
Angular ElementRef简介及其使用
Oct 01 Javascript
基于vue-cli、elementUI的Vue超简单入门小例子(推荐)
Apr 17 Javascript
vue学习笔记之作用域插槽实例分析
Feb 01 Javascript
手把手教你实现 Promise的使用方法
Sep 02 Javascript
JavaScript中遍历的十种方法总结
Dec 15 Javascript
帝国cms首页列表页实现点赞功能
Oct 30 #Javascript
微信小程序商品详情页规格属性选择示例代码
Oct 30 #Javascript
AngularJS中scope的绑定策略实例分析
Oct 30 #Javascript
JavaScript数组push方法使用注意事项
Oct 30 #Javascript
JavaScript Date对象应用实例分享
Oct 30 #Javascript
AngularJS实现controller控制器间共享数据的方法示例
Oct 30 #Javascript
Angularjs按需查询实例代码
Oct 30 #Javascript
You might like
ExtJS与PHP、MySQL实现存储的方法
2010/04/02 PHP
php输入流php://input使用浅析
2014/09/02 PHP
ThinkPHP分组下自定义标签库实例
2014/11/01 PHP
PHP封装返回Ajax字符串和JSON数组的方法
2017/02/17 PHP
PHP单元测试配置与使用方法详解
2019/12/27 PHP
jQuery与ExtJS之选择实例分析
2010/08/19 Javascript
js关于命名空间的函数实例
2015/02/05 Javascript
js兼容火狐获取图片宽和高的方法
2015/05/21 Javascript
详解JavaScript对W3C DOM模版的支持情况
2015/06/16 Javascript
js带缩略图的图片轮播效果代码分享
2015/09/14 Javascript
Bootstrap+jfinal实现省市级联下拉菜单
2016/05/30 Javascript
Webpack如何引入bootstrap的方法
2017/06/17 Javascript
解决vue2中使用axios http请求出现的问题
2018/03/05 Javascript
js如何获取图片url的Blob值并预览示例代码
2019/03/07 Javascript
layui使用表格渲染获取行数据的例子
2019/09/13 Javascript
Vue实现星级评价效果实例详解
2019/12/30 Javascript
js实现鼠标切换图片(无定时器)
2021/01/27 Javascript
浅谈用VSCode写python的正确姿势
2017/12/16 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
pycharm内无法import已安装的模块问题解决
2020/02/12 Python
tensorflow模型转ncnn的操作方式
2020/05/25 Python
Jupyter Notebook添加代码自动补全功能的实现
2021/01/07 Python
python 制作磁力搜索工具
2021/03/04 Python
西班牙电子产品购物网站:Electronicamente
2018/07/26 全球购物
Otticanet澳大利亚:最顶尖的世界名牌眼镜, 能得到打折季的价格
2018/08/23 全球购物
自考生自我鉴定范文
2013/10/01 职场文书
酒店总经理助理岗位职责
2014/02/01 职场文书
共筑中国梦演讲稿
2014/04/23 职场文书
普通党员对照检查材料
2014/08/28 职场文书
2014年个人债务授权委托书范本
2014/09/22 职场文书
2014年体育教师工作总结
2014/12/03 职场文书
六年级学生期末评语
2014/12/26 职场文书
质量保证书怎么写
2015/02/27 职场文书
指导老师鉴定意见
2015/06/05 职场文书
解决numpy数组互换两行及赋值的问题
2021/04/17 Python
详解Python为什么不用设计模式
2021/06/24 Python