Javascript通过overflow控制列表闭合与展开的方法


Posted in Javascript onMay 15, 2015

本文实例讲述了Javascript通过overflow控制列表闭合与展开的方法。分享给大家供大家参考。具体实现方法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>通过overflow控制列表闭合展开</title>
<style type="text/css">
div dl
{
  margin:0;
  padding:0;
  font-size:14px;
}
#divMain
{
  width:500px;
  background-color:#22477A;
  margin:0 auto;
  margin-top:30px;
}
dl
{
  width:200px;
  background:#A6BCE5;
  height:14px; /*和字体大小一样高*/
  overflow:hidden; /*默认溢出隐藏*/
}
dt
{
  cursor:pointer; /*设置手型光标*/
  font-weight:bold;
  color:Green;
}
.open
{
  height:112px;
  overflow:visible;
}
.close
{
  height:14px; /*和字体大小一样高*/
  overflow:hidden;
}
</style>
<script type="text/javascript">
function DisplayList() {
  var dtNode = window.event.srcElement;
  var dlNode = dtNode.parentNode;
  var dlNodes = document.getElementsByTagName("dl");
  for (var i = 0; i < dlNodes.length; i++) {
    if (dlNodes[i] == dlNode) { //判断是否是当前点击的dl
      if (dlNodes[i].className == "open") {
        dlNodes[i].className = "close";
      }
      else {
        dlNodes[i].className = "open";
      }
    }
    else {
      dlNodes[i].className = "close";
    }
  }
}
</script>
</head>
<body>
<div id="divMain">
<dl>
  <dt onclick="DisplayList()">
    球星列表1
  </dt>
  <dd>罗纳尔多</dd>
  <dd>贝克汉姆</dd>
  <dd>齐达内</dd>
  <dd>内马尔</dd>
  <dd>巴蒂斯图塔</dd>
  <dd>梅西</dd>
</dl>
<br />
<dl>
  <dt onclick="DisplayList()">
    球星列表2
  </dt>
  <dd>罗纳尔多</dd>
  <dd>贝克汉姆</dd>
  <dd>齐达内</dd>
  <dd>内马尔</dd>
  <dd>巴蒂斯图塔</dd>
  <dd>梅西</dd>
</dl>
<br />
<dl>
  <dt onclick="DisplayList()">
    球星列表3
  </dt>
  <dd>罗纳尔多</dd>
  <dd>贝克汉姆</dd>
  <dd>齐达内</dd>
  <dd>内马尔</dd>
  <dd>巴蒂斯图塔</dd>
  <dd>梅西</dd>
</dl>
<br />
<dl>
  <dt onclick="DisplayList()">
    球星列表4
  </dt>
  <dd>罗纳尔多</dd>
  <dd>贝克汉姆</dd>
  <dd>齐达内</dd>
  <dd>内马尔</dd>
  <dd>巴蒂斯图塔</dd>
  <dd>梅西</dd>
</dl>
<br />
<dl>
  <dt onclick="DisplayList()">
    球星列表5
  </dt>
  <dd>罗纳尔多</dd>
  <dd>贝克汉姆</dd>
  <dd>齐达内</dd>
  <dd>内马尔</dd>
  <dd>巴蒂斯图塔</dd>
  <dd>梅西</dd>
</dl>
<br />
<dl>
  <dt onclick="DisplayList()">
    球星列表6
  </dt>
  <dd>罗纳尔多</dd>
  <dd>贝克汉姆</dd>
  <dd>齐达内</dd>
  <dd>内马尔</dd>
  <dd>巴蒂斯图塔</dd>
  <dd>梅西</dd>
</dl>
</div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript中使用正则匹配多条,且获取每条中的分组数据
Nov 30 Javascript
如何获取JQUERY AJAX返回的JSON结果集实现代码
Dec 10 Javascript
jQuery写的日历(包括日历的样式及功能)
Apr 23 Javascript
php中给js数组赋值方法
Mar 10 Javascript
javascript中的循环语句for语句深入理解
Apr 04 Javascript
JavaScript实现网站访问次数统计代码
Aug 12 Javascript
Easyui form combobox省市区三级联动
Jan 13 Javascript
Bootstrap modal 多弹窗之叠加显示不出弹窗问题的解决方案
Feb 23 Javascript
详解vue mixins和extends的巧妙用法
Dec 20 Javascript
JavaScript选择排序算法原理与实现方法示例
Aug 06 Javascript
vue、react等单页面项目部署到服务器的方法及vue和react的区别
Sep 29 Javascript
vue项目查看vue版本及cli版本的实现方式
Oct 24 Javascript
javascript实现日期按月份加减
May 15 #Javascript
Javascript递归打印Document层次关系实例分析
May 15 #Javascript
Javascript节点关系实例分析
May 15 #Javascript
自己编写的支持Ajax验证的JS表单验证插件
May 15 #Javascript
Javascript中prototype属性实现给内置对象添加新的方法
May 14 #Javascript
Javascript进制转换实例分析
May 14 #Javascript
Javascript中For In语句用法实例
May 14 #Javascript
You might like
PHP面向对象分析设计的61条军规小结
2010/07/17 PHP
PHP获取文件的MD5值并判断是否被修改的例子
2014/06/19 PHP
php模拟实现斗地主发牌
2020/04/22 PHP
JavaScript 变量命名规则
2009/09/23 Javascript
js弹出层包含flash 不能关闭隐藏的2种处理方法
2013/06/17 Javascript
JS中的eval 为什么加括号
2016/04/13 Javascript
Vue.js每天必学之表单控件绑定
2016/09/05 Javascript
JS前端开发判断是否是手机端并跳转操作(小结)
2017/02/05 Javascript
async/await与promise(nodejs中的异步操作问题)
2017/03/03 NodeJs
JavaScript去掉数组重复项的方法分析【测试可用】
2018/07/19 Javascript
Vue-component全局注册实例
2018/09/06 Javascript
微信小程序修改数组长度的问题的解决
2019/12/17 Javascript
JavaScript如何使用插值实现图像渐变
2020/06/28 Javascript
Node.js 中如何收集和解析命令行参数
2021/01/08 Javascript
[06:21]2014DOTA2国际邀请赛 庆祝VG首阶段领跑;B叔为挣牛排半夜整理情报
2014/07/13 DOTA
python用pickle模块实现“增删改查”的简易功能
2017/06/07 Python
详解python中的线程与线程池
2019/05/10 Python
python数据归一化及三种方法详解
2019/08/06 Python
关于Keras模型可视化教程及关键问题的解决
2020/01/24 Python
解决pycharm不能自动补全第三方库的函数和属性问题
2020/03/12 Python
基于pandas向csv添加新的行和列
2020/05/25 Python
Python模块常用四种安装方式
2020/10/20 Python
css3的transition属性详解
2014/12/15 HTML / CSS
HTML5 canvas实现雪花飘落特效
2016/03/08 HTML / CSS
美国知名户外用品畅销中心:Sierra Trading Post
2016/07/19 全球购物
UDP协议功能
2013/01/06 面试题
制定岗位职责的原则
2013/11/08 职场文书
大学生毕业求职信
2014/06/12 职场文书
质量保证书怎么写
2015/02/27 职场文书
教务处教学工作总结
2015/08/10 职场文书
2016年公司中秋节致辞
2015/11/26 职场文书
深度好文:50条没人告诉你的人生经验,句句精辟
2019/08/22 职场文书
手把手教你从零开始react+antd搭建项目
2021/06/03 Javascript
Python max函数中key的用法及原理解析
2021/06/26 Python
Go 语言结构实例分析
2021/07/04 Golang
微软Win11 全新照片应用面向 Dev预览版推出 新版本上手体验图集
2022/09/23 数码科技