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 相关文章推荐
jquery的冒泡事件的阻止与允许(三种实现方法)
Feb 01 Javascript
JavaScript学习笔记之定时器
Jan 22 Javascript
浅析Node.js的Stream模块中的Readable对象
Jul 29 Javascript
jquery判断复选框选中状态以及区分attr和prop
Dec 18 Javascript
jquery拖拽排序简单实现方法(效果增强版)
Feb 16 Javascript
js面向对象的写法
Feb 19 Javascript
jquery过滤特殊字符',防sql注入的实现方法
Aug 17 Javascript
JS定时检测任务任务完成后执行下一步的解决办法
Dec 22 Javascript
vue实现app页面切换动画效果实例
May 23 Javascript
解决vue select当前value没有更新到vue对象属性的问题
Aug 30 Javascript
vue主动刷新页面及列表数据删除后的刷新实例
Sep 16 Javascript
手把手教你如何编译打包video.js
Dec 09 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
PHP4实际应用经验篇(4)
2006/10/09 PHP
PHP中实现crontab代码分享
2015/03/26 PHP
PHP中你应该知道的require()文件包含的正确用法
2015/06/12 PHP
删除PHP数组中头部、尾部、任意元素的实现代码
2017/04/10 PHP
PHP回调函数与匿名函数实例详解
2017/08/16 PHP
PHP排序算法之简单选择排序(Simple Selection Sort)实例分析
2018/04/20 PHP
PHP语言对接抖音快手小红书视频/图片去水印API接口源码
2020/08/11 PHP
使用javascript访问XML数据的实例
2006/12/27 Javascript
关于可运行代码无法正常执行的使用说明
2010/05/13 Javascript
jquery load()在firefox(火狐)下显示不正常的解决方法
2011/04/05 Javascript
面向对象的Javascript之二(接口实现介绍)
2012/01/27 Javascript
jQuery使用addClass()方法给元素添加多个class样式
2015/03/26 Javascript
Bootstrap实现默认导航栏效果
2020/09/21 Javascript
微信小程序 scroll-view实现上拉加载与下拉刷新的实例
2017/01/21 Javascript
基于node.js制作简单爬虫教程
2017/06/29 Javascript
Angular.js自动化测试之protractor详解
2017/07/07 Javascript
微信小程序实现多行文字超出部分省略号显示功能
2019/10/23 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
[48:26]VGJ.S vs infamous Supermajor 败者组 BO3 第二场 6.4
2018/06/05 DOTA
[01:06:43]完美世界DOTA2联赛PWL S3 PXG vs GXR 第二场 12.19
2020/12/24 DOTA
用Python和MD5实现网站挂马检测程序
2014/03/13 Python
Python实现的检测网站挂马程序
2014/11/30 Python
python结合selenium获取XX省交通违章数据的实现思路及代码
2016/06/26 Python
python下载图片实现方法(超简单)
2017/07/21 Python
python实现顺时针打印矩阵
2019/03/02 Python
python程序中的线程操作 concurrent模块使用详解
2019/09/23 Python
Python基于字典实现switch case函数调用
2020/07/22 Python
详解基于Scrapy的IP代理池搭建
2020/09/29 Python
浅析Python requests 模块
2020/10/09 Python
python中如何使用虚拟环境
2020/10/14 Python
简单的HTML5初步入门教程
2015/09/29 HTML / CSS
丝芙兰意大利官方网站:Sephora.it
2019/12/13 全球购物
游戏开发中如何使用CocosCreator进行音效处理
2021/04/14 Javascript
HTML基础详解(下)
2021/10/16 HTML / CSS
Mysql数据库表中为什么有索引却没有提高查询速度
2022/02/24 MySQL
在windows server 2012 r2中安装mysql的详细步骤
2022/07/23 Servers