使用定时器、鼠标移动事件

var img = $('#user_head');
var menu = $('.nav_list');
var i=0;
var timer;
img.mouseenter(function () {
clearTimeout(timer)
menu.show()
})
img.mouseleave(function () {
timer = window.setTimeout(function () {
menu.hide()
},500)
})
menu.mouseenter(function () {
clearTimeout(timer)
// menu.css('visibility','vidible')
})
menu.mouseleave(function () {
menu.hide()
})

使用纯css方式

  • html
<nav class="nav-swrap">
<ul>
<li><a href="#">首页</a> </li>
<li>
<a href="#">消息管理</a>
<ul class="sub-nav">
<li><a href="#1">添加用户</a> </li>
<li><a href="#">删除用户</a> </li>
<li><a href="#">查询用户</a> </li>
</ul>
</li>
<li>
<a href="#">用户管理</a>
<ul class="sub-nav">
<li><a href="#">添加用户</a> </li>
<li><a href="#">删除用户</a> </li>
<li><a href="#">修改用户</a> </li>
</ul>
</li>
<li><a href="#">头像</a></li>
</ul> </nav>
  • css
*{
padding: 0; margin: 0; list-style: none;
}
/*初始化 a */
a{
text-decoration: none; color: deepskyblue;
}
/*设置外层导航布局*/
.nav-swrap>ul{
display: -webkit-box;
width: 80%;
height: 50px;
margin: 0 auto;
}
/*外层li*/
.nav-swrap>ul>li{
-webkit-box-flex: 1;
height: 100%; line-height: 50px;
background-color: #eee;
text-align: center;
} /*内层ul, 绝对定位, 高度为0,保证鼠标移动到二级导航下,不会出现*/
.sub-nav{
padding-top: 10px;
width: 100%;
-webkit-perspective: 400px; /* 透视,站在400px前看 */
}
/*内层li*/
.sub-nav>li{
background: -webkit-linear-gradient(top, #ccc,#eee);
width: 50%;
margin: 0 auto;
}
.sub-nav{
display: none;
}
.nav-swrap>ul>li>a{
display: inline-block;
height: 100%;
width: 100%;
}
.nav-swrap>ul>li>a:hover+ul,.sub-nav:hover{
display: block;
}

js导航下拉菜单的更多相关文章

  1. 用原生JS实现的一个导航下拉菜单,下拉菜单的宽度与浏览器视口的宽度一样(js+html+css)

    这个导航下拉菜单需要实现的功能是:下拉菜单的宽度与浏览器视口的宽度一样宽:一级导航只有两项,当鼠标移到一级导航上的导航项时,相应的二级导航出现.在本案例中通过改变二级导航的高度来实现二级导航的显示和消 ...

  2. 纯CSS实现二级导航下拉菜单--css的简单应用

    思想:使用css的display属性控制二级下拉菜单的显示与否.当鼠标移动到一级导航菜单的li标签时,显示二级导航菜单的ul标签.由于实现起来比较简单,所以在这里直接给出了参考代码. 1.纯CSS二级 ...

  3. 纯css和js版下拉菜单

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  4. js 联动下拉菜单

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  5. js版本下拉菜单

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  6. JS实现下拉菜单的功能

    <!DOCTYPE html> <html> <head> <meta charset = "utf8"> <title> ...

  7. jq+css+html简单实现导航下拉菜单

    相信导航栏下拉菜单是web开发最常见的一个item了.这里就不做介绍了,直接上code. Html部分 <div class="_nav"> <ul id=&qu ...

  8. HTML DOM部分---做竖向横向的下拉导航 下拉菜单 图片轮播(圆点、箭头) 选项卡 进度条;

    1,竖向下拉导航 鼠标单击打开 再打击关闭 <style> *{ margin:0px auto; padding:0px;} div{ width:100px; height:50px; ...

  9. 兼容ie7的导航下拉菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. 【OCP题库】最新CUUG OCP 12c 071考试题库(65题)

    65.(22-16) choose the best answer: The CUSTOMERS table has the following structure: You need to writ ...

  2. python全栈开发_day31_OSI七层协议和c/s架构

    一:OSI七层协议 应用层 =>表示层 =>会话层 =>传输层 =>网络层 =>数据链路层 =>物理连接层 二:c/s架构 b/s的本质也是c/s 手机端:好像cs ...

  3. C语言数据结构之图的基本操作

    本博文是是博主在学习数据结构图的这一章知识时做的一些总结,代码运行环境:visual studio2017 纯C语言 ,当然掌握了方法,你也可以试着用其它的语言来实现同样的功能. 下面的程序主要实现了 ...

  4. java中的jdk配置详解:

    1.配值系统变量"JAVA_HOME" 变量名JAVA_HOME: 指向:JDK(java开发工具包)的安装路径 目的:使用JDK安装目录时,可以直接通过”%JAVA_HOME%“ ...

  5. 初学struts2框架

    昨天初学strts2,折腾了一晚上才正好一个简单的应用程序,在这个过程中遇到了很多的问题. 1. struts2的更新太快,所以从图书馆借的书常常会跟不上变化,所以有时执行起来会很麻烦. 2. 如果你 ...

  6. SHELL脚本进阶

    一.读取参数 $0 程序名称$1 第一个参数$2 第二个参数,依次类推可以使用 basename 来读取程序名称:basename $0 可以使用 dirname 来读取第一个参数的目录:dirnam ...

  7. Centos7 DNS神奇的配置

    文件 [root@iff etc]# cat /etc/named.conf // // named.conf // // Provided by Red Hat bind package to co ...

  8. Flask中的before_request装饰器和after_request装饰器以及WTForms组件

    一.before_request装饰器和after_request装饰器 我们现在有一个Flask程序其中有3个路由和视图函数 from flask import Flask app = Flask( ...

  9. 20190416 OSX系统使用VMware Fusion安装CentOS7踩的那些坑

    一.创建虚拟机 (1)在虚拟机资源库中点击[+添加]按钮,选择“新建...”选项 (2)选择创建自定义虚拟机 (3)选择系统类型为CentOS (4)选择虚拟磁盘类型 (5)选择虚拟机存储位置:点击[ ...

  10. excel 正则表达式用法

    Private Sub RegEx_Replace()        Dim myRegExp As Object      Dim Myrange As Range, C As Range      ...