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

  1. var img = $('#user_head');
  2. var menu = $('.nav_list');
  3. var i=0;
  4. var timer;
  5. img.mouseenter(function () {
  6. clearTimeout(timer)
  7. menu.show()
  8. })
  9. img.mouseleave(function () {
  10. timer = window.setTimeout(function () {
  11. menu.hide()
  12. },500)
  13. })
  14. menu.mouseenter(function () {
  15. clearTimeout(timer)
  16. // menu.css('visibility','vidible')
  17. })
  18. menu.mouseleave(function () {
  19. menu.hide()
  20. })

使用纯css方式

  • html
  1. <nav class="nav-swrap">
  2. <ul>
  3. <li><a href="#">首页</a> </li>
  4. <li>
  5. <a href="#">消息管理</a>
  6. <ul class="sub-nav">
  7. <li><a href="#1">添加用户</a> </li>
  8. <li><a href="#">删除用户</a> </li>
  9. <li><a href="#">查询用户</a> </li>
  10. </ul>
  11. </li>
  12. <li>
  13. <a href="#">用户管理</a>
  14. <ul class="sub-nav">
  15. <li><a href="#">添加用户</a> </li>
  16. <li><a href="#">删除用户</a> </li>
  17. <li><a href="#">修改用户</a> </li>
  18. </ul>
  19. </li>
  20. <li><a href="#">头像</a></li>
  21. </ul>
  22. </nav>
  • css
  1. *{
  2. padding: 0; margin: 0; list-style: none;
  3. }
  4. /*初始化 a */
  5. a{
  6. text-decoration: none; color: deepskyblue;
  7. }
  8. /*设置外层导航布局*/
  9. .nav-swrap>ul{
  10. display: -webkit-box;
  11. width: 80%;
  12. height: 50px;
  13. margin: 0 auto;
  14. }
  15. /*外层li*/
  16. .nav-swrap>ul>li{
  17. -webkit-box-flex: 1;
  18. height: 100%; line-height: 50px;
  19. background-color: #eee;
  20. text-align: center;
  21. }
  22. /*内层ul, 绝对定位, 高度为0,保证鼠标移动到二级导航下,不会出现*/
  23. .sub-nav{
  24. padding-top: 10px;
  25. width: 100%;
  26. -webkit-perspective: 400px; /* 透视,站在400px前看 */
  27. }
  28. /*内层li*/
  29. .sub-nav>li{
  30. background: -webkit-linear-gradient(top, #ccc,#eee);
  31. width: 50%;
  32. margin: 0 auto;
  33. }
  34. .sub-nav{
  35. display: none;
  36. }
  37. .nav-swrap>ul>li>a{
  38. display: inline-block;
  39. height: 100%;
  40. width: 100%;
  41. }
  42. .nav-swrap>ul>li>a:hover+ul,.sub-nav:hover{
  43. display: block;
  44. }

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. “全栈2019”Java多线程第一章:认识多线程

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  2. [php审计实战篇]BlueCms v1.6 Union注入

    非常基础的代码审计练习,适合有php基础的审计新手练习 本文作者:Aedoo 来源:i春秋社区 0×01 代码跟踪 首先,进入首页代码 :index.php 包含了php文件:/include/com ...

  3. 面向对象之ajax

    1.Ajax发送请求的几个步骤 1. 创建 XMLHttpRequest 对象 var xhr = new XMLHttpRequest();//IE6 使用var xhr= new ActiveXO ...

  4. 【FAQ】调用接口序列化问题

    问题: Exception in thread "main" com.fasterxml.jackson.databind.JsonMappingException:Can not ...

  5. 二手前端入门React项目

    个人对ReactJS这门技术比较感兴趣,在基友的帮助下成功创建了一个React标准前端工程,过程中遇到了不少麻烦,今天作为笔记一般记录一下遇到的问题和解决方案. 基础环境 手头一台Mac 使用OSX系 ...

  6. 浅析Postgres中的并发控制(Concurrency Control)与事务特性(下)

    上文我们讨论了PostgreSQL的MVCC相关的基础知识以及实现机制.关于PostgreSQL中的MVCC,我们只讲了元组可见性的问题,还剩下两个问题没讲.一个是"Lost Update& ...

  7. 如何使用Node爬虫利器Puppteer进行自动化测试

    文:华为云DevCloud 乐少 1.背景 1.1 前端自动化测试较少 前端浏览器众多导致页面兼容性问题比较多,另外界面变化比较快,一个月内可能页面改版两三次,这样导致对前端自动化测试较少,大家也不是 ...

  8. Laravel5.5 引入并使用第三方类库操作

    理论上,Laravel5系列都支持,各位可以一试.我这里使用5.5版本. 我这里引入了一个将汉字转化为拼音的类库测试,一起来看看吧! 首先,在laravel的app目录下自定义一个文件夹,我用的名字是 ...

  9. iOS开发debug跟release版本NSLog屏蔽方法

    简单介绍以下几个宏: 1) __VA_ARGS__ 是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持).宏前面加上##的作用在于,当可变参 ...

  10. python模块之 fabric

    Python模块之Fabric   Fabric简介 Fabric是一个Python库,可以通过SSH在多个host上批量执行任务.你可以编写任务脚本,然后通过Fabric在本地就可以使用SSH在大量 ...