js写的一个简单的手风琴菜单

  1 <!DOCTYPE html>
  2 <html>
  3 <head lang="en">
  4     <meta charset="UTF-8">
  5     <title></title>
  6     <style>
  7         *{
  8             margin: 0;
  9             padding: 0;
 10         }
 11         div{
 12             outline: 1px white  solid;
 13         }
 14         #out{
 15             width: 300px;
 16             height: 360px;
 17             position: absolute;
 18             left :200px;
 19             top:100px;
 20         }
 21         .menu{
 22             width: 300px;
 23             height: 30px;
 24             background-color:dodgerblue;
 25             text-align: center;
 26             line-height: 30px;
 27         }
 28         .content{
 29             height: 90px;
 30             display: none;
 31         }
 32         ul{
 33             list-style: none;
 34         }
 35         li{
 36             width: 300px;
 37             height: 30px;
 38             outline: 1px blue solid;
 39             background-color: aqua;
 40             text-align: center;
 41             line-height: 30px;
 42         }
 43         .menu:hover{
 44             background-color:mediumblue;
 45             cursor: pointer;
 46         }
 47         li:hover{
 48           background-color: aquamarine;
 49             cursor: pointer;
 50         }
 51
 52
 53     </style>
 54
 55     <script type="text/javascript">
 56         //兼容函数
 57         function getNodeClassName(className){
 58             var array=[];
 59             if(document.all){
 60                 var node=document.getElementsByClassName("*");
 61                 for(var i=0;i<node.length;i++){
 62                     if(node[i].className==className){
 63                         array.push(node[i]);
 64                     }
 65                 }
 66             }else{
 67                 array=document.getElementsByClassName(className);
 68             }
 69             return array;
 70         }
 71
 72         //兼容函数
 73         function getNode(obj){
 74            var node=obj.nextSibling;
 75             if(node.nodeType==3 && /^\s+$/.test(node.nodeValue)){
 76                 node = node.nextSibling;
 77             }
 78             return node;
 79         }
 80
 81         //兼容函数
 82         function getStyle(obj,attr){
 83             return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj,false)[attr];
 84         }
 85
 86        window.onload=function(){
 87            var menu=getNodeClassName('menu');
 88            for(var i=0;i<menu.length;i++){
 89                menu[i].onclick=function(){
 90                    var node=getNode(this);
 91                   var dis=getStyle(node,'display');
 92                    if(dis=='block'){
 93                        node.style.display='none';
 94                    }else{
 95                        node.style.display='block';
 96                    }
 97
 98                }
 99            }
100
101         }
102     </script>
103 </head>
104 <body>
105 <div id="out">
106     <div class="menu">java</div>
107     <div class="content">
108         <ul>
109             <li>封装</li>
110             <li>继承</li>
111             <li>多态</li>
112         </ul>
113     </div>
114     <div class="menu">菜单二</div>
115     <div class="content">
116         <ul>
117             <li>子菜单一</li>
118             <li>子菜单二</li>
119             <li>子菜单三</li>
120         </ul>
121     </div>
122     <div class="menu">菜单三</div>
123     <div class="content">
124         <ul>
125             <li>子菜单一</li>
126             <li>子菜单二</li>
127             <li>子菜单三</li>
128         </ul>
129     </div>
130
131
132 </div>
133 </body>
134 </html>
  1 <!DOCTYPE html>
  2 <html>
  3 <head lang="en">
  4     <meta charset="UTF-8">
  5     <title></title>
  6     <style>
  7         *{
  8             margin: 0;
  9             padding: 0;
 10         }
 11         div{
 12             outline: 1px white  solid;
 13         }
 14         #out{
 15             width: 300px;
 16             height: 360px;
 17             position: absolute;
 18             left :200px;
 19             top:100px;
 20         }
 21         .menu{
 22             width: 300px;
 23             height: 30px;
 24             background-color:dodgerblue;
 25             text-align: center;
 26             line-height: 30px;
 27         }
 28         .content{
 29             height: 90px;
 30             display: none;
 31         }
 32         ul{
 33             list-style: none;
 34         }
 35         li{
 36             width: 300px;
 37             height: 30px;
 38             outline: 1px blue solid;
 39             background-color: aqua;
 40             text-align: center;
 41             line-height: 30px;
 42         }
 43         .menu:hover{
 44             background-color:mediumblue;
 45             cursor: pointer;
 46         }
 47         li:hover{
 48           background-color: aquamarine;
 49             cursor: pointer;
 50         }
 51
 52
 53     </style>
 54
 55     <script type="text/javascript">
 56         //兼容函数
 57         function getNodeClassName(className){
 58             var array=[];
 59             if(document.all){
 60                 var node=document.getElementsByClassName("*");
 61                 for(var i=0;i<node.length;i++){
 62                     if(node[i].className==className){
 63                         array.push(node[i]);
 64                     }
 65                 }
 66             }else{
 67                 array=document.getElementsByClassName(className);
 68             }
 69             return array;
 70         }
 71
 72         //兼容函数
 73         function getNode(obj){
 74            var node=obj.nextSibling;
 75             if(node.nodeType==3 && /^\s+$/.test(node.nodeValue)){
 76                 node = node.nextSibling;
 77             }
 78             return node;
 79         }
 80
 81         //兼容函数
 82         function getStyle(obj,attr){
 83             return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj,false)[attr];
 84         }
 85
 86        window.onload=function(){
 87            var menu=getNodeClassName('menu');
 88            for(var i=0;i<menu.length;i++){
 89                menu[i].onclick=function(){
 90                    var node=getNode(this);
 91                   var dis=getStyle(node,'display');
 92                    if(dis=='block'){
 93                        node.style.display='none';
 94                    }else{
 95                        node.style.display='block';
 96                    }
 97
 98                }
 99            }
100
101         }
102     </script>
103 </head>
104 <body>
105 <div id="out">
106     <div class="menu">java</div>
107     <div class="content">
108         <ul>
109             <li>封装</li>
110             <li>继承</li>
111             <li>多态</li>
112         </ul>
113     </div>
114     <div class="menu">菜单二</div>
115     <div class="content">
116         <ul>
117             <li>子菜单一</li>
118             <li>子菜单二</li>
119             <li>子菜单三</li>
120         </ul>
121     </div>
122     <div class="menu">菜单三</div>
123     <div class="content">
124         <ul>
125             <li>子菜单一</li>
126             <li>子菜单二</li>
127             <li>子菜单三</li>
128         </ul>
129     </div>
130
131
132 </div>
133 </body>
134 </html> 

时间: 2024-08-01 17:39:44

js写的一个简单的手风琴菜单的相关文章

纯css+js写的一个简单的tab标签页带样式_javascript技巧

最近经常要用tab标签页,所以写了一个简单的,以后用的话直接拷贝一个,稍微改改就OK了. 先看效果图:  接下来看下代码怎么写的吧: 一.sp文件easytab.jsp 复制代码 代码如下: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String b

使用原生js写的一个简单slider_javascript技巧

复制代码 代码如下: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> body,div,ul,li { margin: 0; padding: 0; } ul,li { list-style:

Python写的一个简单监控系统

  这篇文章主要介绍了Python写的一个简单监控系统,本文讲解了详细的编码步骤,并给给出相应的实现代码,需要的朋友可以参考下 市面上有很多开源的监控系统:Cacti.nagios.zabbix.感觉都不符合我的需求,为什么不自己做一个呢 用Python两个小时徒手撸了一个简易的监控系统,给大家分享一下,希望能对大家有所启发 首先数据库建表 建立一个数据库"falcon",建表语句如下: ? 1 2 3 4 5 6 7 8 9 10 11 CREATE TABLE `stat` ( `

c#-c++写的一个简单学生信息管理系统,求助。

问题描述 c++写的一个简单学生信息管理系统,求助. 编译不报错,就是运行不出来 #include<iostream.h> #include<stdio.h> #include<string.h> class student//定义学生信息类 {public: char name[20]; char num[10]; char banji[20]; int math,english,chinese,computer; int sum; double ave; void

用JS写的一个Ajax库(实例代码)_javascript技巧

myajax是一个用js编写的一个跨浏览器的ajax库,支持get, post, jsonp请求,精巧,简单. 一.发送GET请求: myajax.get({ <span style="white-space:pre"> </span>data: {}, //参数 url: "", //请求地址 //发生错误是调用 error: function(data) { }, //请求成功调用 success: function(data){ <

java代码-我用Java 写的一个简单截图小工具 但是出现一些在重截时出现bug 跪求大神

问题描述 我用Java 写的一个简单截图小工具 但是出现一些在重截时出现bug 跪求大神 /**在这里贴上我注释满满的代码 求一语道破 求建议 求批评 没有贴main 方法 随便写个main方法便可运行 */ ` package com.subimaga; import java.awt.AWTException; import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Cursor; import java.

swiper js滑块幻灯片-swiper.js写的一个滑块,在安卓中不能滑动

问题描述 swiper.js写的一个滑块,在安卓中不能滑动 在IOS上显示正常, 安卓4.1 .4.2不能运行,5.0的可以.现在怎么样可以让安卓手机能正常显示. 解决方案 没有涉猎过,不是很清楚 解决方案二: 同问,不过在我的是在手机浏览器上可以,但是通过微信和QQ打开就不能滚动了,如果解决望分享 解决方案三: 同问,不过在我的是在手机浏览器上可以,但是通过微信和QQ打开就不能滚动了,如果解决望分享 解决方案四: 同问,不过在我的是在手机浏览器上可以,但是通过微信和QQ打开就不能滚动了,如果解

java-jsp+servlet写了一个简单的注册,但是出现找不到页面

问题描述 jsp+servlet写了一个简单的注册,但是出现找不到页面 小菜鸟刚写了一个简单的注册页面,但是配置好servlet以后出现找不到页面,找了好长时 间没有发现问题在哪里,希望有明白的给解释解释 解决方案 你写的是相对路径 ,一般用绝对路径 form 在 项目/page 下找相应页面,你的servlet 是映射在 项目/ 下的 你可以 在form 的action 改为 ../addUser 试试 解决方案二: 看看这个: 路径总结: 路径分为两种情况: 1.客户端路径 ==> 给浏览器

makefile-在linux写的一个简单的程序 编译不能通过 求大神给看看

问题描述 在linux写的一个简单的程序 编译不能通过 求大神给看看 解决方案 总共有3个文件 test.h test.cpp main.cpp; 在main.cpp内部调用test类实现的方法,执行make命令后,可以生成test.o和main.o但是好像链接的时候有问题, 不能生成目标问题 解决方案二: 找出问题来了 是makefile文件写的有问题 编译应该使用g++ 代码有问题的地方 希望各位指正 解决方案三: 提示信息是函数没有定义,链接返回错误.