代码简介:

折叠菜单,竖向展开,点击时缓慢展开,展开后可以作为菜单的栏目介绍等,还算不错。

代码内容:

<!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=gb2312" />
<title>JS+CSS竖向折叠滑动菜单代码_网页代码站(www.webdm.cn)</title>
</head>
<style type="text/css">
<!--
body,div,ul,li,p,h1,h2{ margin:0; padding:0; border:0; background:#FAFAFA; font-family:Arial, Helvetica, sans-serif,"宋体"}
body{ text-align:center; font-size:12px}
li{ list-style:none}
.rolinList{ width:402px; height:auto; margin:20px auto 0 auto; text-align:left}
.rolinList li{margin-bottom:1px;border:1px solid #DADADA}
.rolinList li h2{ width:380px; height:40px;  background:#fff; font-size:14px; line-height:40px; padding-left:20px; color:#333; cursor:pointer}
.content{ height:150px;width:400px;  background:#fff;  background:#FAFAFA}
.content p{ margin:12px}
-->
</style>
<script type="text/javascript">
//<![CDATA[
window.onload = function() {
rolinTab("rolin")
}
function rolinTab(obj) {
var list = $(obj).getElementsByTagName("LI");
var state = {show:false,hidden:false,showObj:false};
for (var i=0; i<list.length; i++) {
var tmp = new rolinItem(list[i],state);
if (i == 0) tmp.pShow();
}
}
function rolinItem(obj,state) {
var speed = 0.0666;
var range = 1;
var interval;
var tarH;
var tar = this;
var head = getFirstChild(obj);
var content = getNextChild(head);
var isOpen = false;
this.pHidden = function() {
if (isOpen) hidden();
}
this.pShow = show;
var baseH = content.offsetHeight;
content.style.display = "none";
var isOpen = false;
head.onmouseover = function() {
this.style.background = "#EFEFEF";
}
head.onmouseout = mouseout;
head.onclick = function() {
this.style.background = "#EFEFEF";
if (!state.show && !state.hidden) {
if (!isOpen) {
head.onmouseout = null;
show();
} else {
hidden();
}
}
}
function mouseout() {
this.style.background = "#FFF"
}
function show() {
head.style.borderBottom = "1px solid #DADADA";
state.show = true;
if (state.openObj && state.openObj != tar ) {
state.openObj.pHidden();
}
content.style.height = "0px";
content.style.display = "block";
content.style.overflow = "hidden";
state.openObj = tar;
tarH = baseH;
interval = setInterval(move,10);
}
function showS() {
isOpen = true;
state.show = false;
}
function hidden() {
state.hidden = true;
tarH = 0;
interval = setInterval(move,10);
}
function hiddenS() {
head.style.borderBottom = "none";
head.onmouseout = mouseout;
head.onmouseout();
content.style.display = "none";
isOpen = false;
state.hidden = false;
}
function move() {
var dist = (tarH - content.style.height.pxToNum())*speed;
if (Math.abs(dist) < 1) dist = dist > 0 ? 1: -1;
content.style.height = (content.style.height.pxToNum() + dist) + "px";
if (Math.abs(content.style.height.pxToNum() - tarH) <= range ) {
clearInterval(interval);
content.style.height = tarH + "px";
if (tarH != 0) {
showS()
} else {
hiddenS();
}
}
}
}
var $ = function($) {return document.getElementById($)};
String.prototype.pxToNum = function() {return Number(this.replace("px",""))}
function getFirstChild(obj) {
var result = obj.firstChild;
while (!result.tagName) {
result = result.nextSibling;
}
return result;
}
function getNextChild(obj) {
var result = obj.nextSibling;
while (!result.tagName) {
result = result.nextSibling;
}
return result;
}
//]]>
</script>
<body>
<ul class="rolinList" id="rolin">
<li>
<h2>网页代码站</h2>
<div class="content"><a href="http://www.webdm.cn">网页代码站</a> - 最专业的代码下载网站 - 致力为中国站长提供有质量的代码!</div>
</li>
<li>
<h2>唐朝帝王槌</h2>
<div class="content"><p>立剑赏月意惆怅,袖饰刀,衣披霜,傲视雾丸,徒手战扶桑.<br />
问津终寻帝王陵,黑影没,尸满岗,惟见逆鲮露寒光.  <br />
须发苍,气轩昂,三尺银狼,破风动八方<br />
依身紧握噬魂枪,饮虎血,豪万丈.惟有千年我故乡!</p></div>
</li>
<li>
<h2>玉女枪法</h2>
<div class="content"><p>曾经有个梦想:驰骋江湖,快意恩仇。<br />
曾经有份愿望:千里追凶,十步溅血。<br />
曾经有腔豪情:奇功盖世,名冠武林。<br />
曾经有种期盼:烛影摇红,衣袖添香。</p></div>
</li>
<li>
<h2>黑沙刚体</h2>
<div class="content"><p>赵客缦胡缨,吴钩霜雪明。银鞍照白马,飒沓如流星。 <br />
十步杀一人,千里不留行。事了拂衣去,深藏身与名。 <br />
闲过信陵饮,脱剑膝前横。将炙啖朱亥,持觞劝侯嬴。 <br />
三杯吐然诺,五岳倒为轻。眼花耳热后,意气素霓生。 <br />
纵死侠骨香,不惭世上英。谁能书阁下,白首太玄经。</p>
</div>
</li>
<li>
<h2>ASP源码下载</h2>
<div class="content"><a href="http://www.webdm.cn">网页代码站</a> - 最专业的代码下载网站 - 致力为中国站长提供有质量的代码!</div>
</li>
<li>
<h2>雾水掌</h2>
<div class="content"><p>蹄影善奔,如幻如魔,其皮传世,绝学再现,<br />
又有谁在这残阳道中追逐它的身影... </p>
</div>
</li>
</ul>
</body>
</html>
<br>
<p><a href="http://www.webdm.cn">网页代码站</a> - 最专业的代码下载网站 - 致力为中国站长提供有质量的代码!</p>

代码来自:http://www.webdm.cn/webcode/bedaf0bd-7854-478d-bbaf-f3e7ca484b32.html

转载于:https://www.cnblogs.com/webdm/archive/2011/04/26/2028895.html

JS+CSS竖向折叠滑动菜单代码相关推荐

  1. html如何做滑动门效果,JS+CSS实现简单滑动门(滑动菜单)效果

    本文实例讲述了JS+CSS实现简单滑动门的方法.分享给大家供大家参考.具体如下: 这是一款超简约设计的滑动门菜单,鼠标放到主菜单上,里面的内容会跟着变化,实际上本演示是一个范例,从代码中的注释你就能感 ...

  2. JS打字效果的动态菜单代码分享

    这篇文章主要介绍了JS打字效果的动态菜单,推荐给大家,有需要的小伙伴可以参考下. 这是一款基于javascript实现的打字效果的动态菜单特效代码,分享给大家学习学习. 小提示:浏览器中如果不能正常运 ...

  3. JS超级酷的导航菜单代码

    代码简介: JS超级酷的导航菜单代码,类似WINDOWS风格的导航,又又立体效果,很不错的,赶快运行一下,一睹为快吧. 代码内容: <HTML> <HEAD> <TITL ...

  4. html5手机端的点击弹出侧边滑动菜单代码

    效果预览:http://hovertree.com/texiao/html5/19/ 本效果适用于移动设备,可以使用手机等浏览效果. 源码下载:http://hovertree.com/h/bjaf/ ...

  5. html css 导航 左右滑动效果代码,HTML+CSS/CSS3实现滑动下拉导航栏

    HTML+CSS/CSS3实现滑动下拉导航栏 纯css实现的滑动下拉导航栏,超详细代码,以及实现中遇到的小问题 首先创建一个列表以及一些标签的全局样式 html代码 css代码 * { margin: ...

  6. 动态html树形菜单模板,JS+CSS简易树状菜单Tree

    /p> "http://www.w3.org/TR/html4/loose.dtd"> 树形菜单实例-www.mb5u.com function showhide_ob ...

  7. Android 3D滑动菜单完全解析,实现推拉门式的立体特效

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/10471245 在上一篇文章中,我们学习了Camera的基本用法,并借助它们编写了一 ...

  8. 网页计算机(h5+js+css)

    今天学了一个网页计算机(h5+js+css) 效果图如下: 代码如下: html: <!DOCTYPE html> <html lang="en"> < ...

  9. html实现图片淡化效果,图片由模糊变清晰的淡入效果 js+css实现【原创】

    网页里,在一些例如栏目.标签.产品展示的地方,如果直接显示图片,会觉得有点平淡,如果图片加点由模糊变清晰.淡入淡出的效果,会大大的增强用户体验.本文将为你介绍一个js+css实现的方法,代码简单易懂, ...

最新文章

  1. linux下文件夹压缩解压.tar , .gz , .tar.gz , .bz2 , .tar.bz2 , .bz , .tar.bz , .zip , .rar
  2. 伪类的使用之如何在一段文字前面添加一个点
  3. numpy合并两个ndarry或多个
  4. C++中的static 成员变量的一些注意点
  5. 【Sentry】为什么Cloudera要创建Hadoop安全组件Sentry?
  6. 第七节:SpringBoot高级属性配置二
  7. python2.7下使用logging模块记录日志到终端显示乱码问题解决
  8. 【eclipse】Multiple annotations found at this line:——解决方法
  9. chrome老版本_技术周刊 2019-08-06:Chrome 又隐藏了 www
  10. 启用Windows 功能NetFx3时出错,错误代码:-2146498298
  11. U盘数据恢复免费破解版哪里有?
  12. boder-radius属性
  13. heka 配置 一个go语言实现轻量级logstash 干掉ELK
  14. 基于多视图几何的三维重建
  15. c语言设计模拟闹钟主函数,基于C5单片机的数字时钟课程设计(C语言,带闹钟)要点.doc...
  16. 三维建模 Cinema 4D
  17. Openwrt——带宽统计助手nlbwmon
  18. 底层网络知识详解:从二层到三层-第5讲-从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?
  19. 西电软工操作系统复习纲要
  20. ArrayList 复制

热门文章

  1. three.js 构建简单的房间
  2. word转PDF图片消失问题
  3. HTML+JS+websocket 实现联机“游戏王”对战(十三)- 实机演示视频
  4. js写的一款前端小游戏
  5. ABOUT DOTA
  6. 五分钟掌握计时器CountDownTimer,快速实现倒计时功能
  7. 网络精英赛模拟练习(3)
  8. KVM虚拟机系统迁移
  9. (更新)Raspberry Pi OS Lite/Full arm64 Bullseye安装Cutefish桌面
  10. Linux笔记之Docker安装,基于Debian 11(bullseye)