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 相关文章推荐
一个很酷的拖动层的js类,兼容IE及Firefox
Jun 23 Javascript
将函数的实际参数转换成数组的方法
Jan 25 Javascript
使用jquery的ajax需要注意的地方dataType的设置
Aug 12 Javascript
深入分析原生JavaScript事件
Dec 29 Javascript
JS实现alert中显示换行的方法
Dec 17 Javascript
confirm确认对话框的实现方法总结
Jun 17 Javascript
jQuery实现在新增加的元素上添加事件方法案例分析
Feb 09 Javascript
详解js几个绕不开的事件兼容写法
Aug 30 Javascript
webpack多页面开发实践
Dec 18 Javascript
javascript实现智能手环时间显示
Sep 18 Javascript
vue+elementUI动态增加表单项并添加验证的代码详解
Dec 17 Vue.js
Javascript 解构赋值详情
Nov 17 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
PHP类的静态(static)方法和静态(static)变量使用介绍
2012/02/19 PHP
php实现信用卡校验位算法THE LUHN MOD-10示例
2014/05/07 PHP
php实现网站文件批量压缩下载功能
2015/10/28 PHP
浅谈php数组array_change_key_case() 函数和array_chunk()函数
2016/10/22 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
2017/04/26 PHP
PHP+mysql+Highcharts生成饼状图
2015/05/04 Javascript
javascript解决小数的加减乘除精度丢失的方案
2016/05/31 Javascript
轻松搞定js表单验证
2016/10/13 Javascript
Angular中的interceptors拦截器
2017/06/25 Javascript
Nodejs实现爬虫抓取数据实例解析
2018/07/05 NodeJs
Vue 3.0双向绑定原理的实现方法
2019/10/23 Javascript
稍微学一下Vue的数据响应式(Vue2及Vue3区别)
2019/11/21 Javascript
Vue移动端实现图片上传及超过1M压缩上传
2019/12/23 Javascript
Vue-resource安装过程及使用方法解析
2020/07/21 Javascript
[41:20]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS DK
2014/05/26 DOTA
[07:12]2014DOTA2西雅图国际邀请赛 黑马Liquid专题采访
2014/07/12 DOTA
Django中实现一个高性能计数器(Counter)实例
2014/07/09 Python
Python编程之多态用法实例详解
2015/05/19 Python
Python网络编程之TCP套接字简单用法示例
2018/04/09 Python
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
2018/09/04 Python
Python基于滑动平均思想实现缺失数据填充的方法
2019/02/21 Python
opencv与numpy的图像基本操作
2019/03/08 Python
详解pandas如何去掉、过滤数据集中的某些值或者某些行?
2019/05/15 Python
通过实例简单了解Python中yield的作用
2019/12/11 Python
Python3爬虫发送请求的知识点实例
2020/07/30 Python
挪威手表购物网站:Klokker
2016/09/19 全球购物
美国花园雕像和家居装饰网上商店:Design Toscano
2019/03/09 全球购物
UNIX文件类型
2013/08/29 面试题
酒店工作职员求职简历的自我评价
2013/10/23 职场文书
毕业生的自我鉴定该怎么写
2013/12/02 职场文书
高中生的自我鉴定范文
2014/01/24 职场文书
奉献家乡演讲稿
2014/09/13 职场文书
小区环境卫生倡议书
2015/04/29 职场文书
2015年会计人员工作总结
2015/05/22 职场文书
Golang生成Excel文档的方法步骤
2021/06/09 Golang
微信告警的zabbix监控系统 监控整个NGINX集群
2022/04/18 Servers