jQuery实现二级下拉菜单效果


Posted in Javascript onJanuary 05, 2016

大家都知道jQuery是一个框架,它对JS进行了封装,使其更方便使用。前面两篇博文分别是用CSS样式和JS实现的,那么这篇就用jQuery来实现二级下拉式菜单。
使用JQuery实现需要用到的知识有:

  •        1)使用$(function(){...})获取到想要作用的HTML元素。
  •        2)通过使用children()方法寻找子元素。
  •        3)通过使用show()方法来显示HTML元素。
  •        4)通过使用hide()方法来隐藏HTML元素。
  •        5)jQuery库引用方法:

第一种方法:将jQuery库下载到电脑上,然后引用,我下载的是jquery-1.7.1.min.js这个版本。
       例如: <script type="text/javascript" src="jquery/jquery-1.7.1.min.js"></script>
第二种方法:直接引用在线服务器上的jQuery库文件,比如谷歌服务器jQuery库,百度服务器jQuery库等。
       例如:引用百度服务器上的jQuery库文件
       <script type="text/javascript" src="jquery/1.9.0/jquery.js"></script>
接下来看看制作的流程:
1、调用jQuery库:编写代码,引用jquery库。由于谷歌已退出大陆,建议使用百度服务器的jQuery库。
       注意: 百度服务器的jQuery库地址:http://libs.baidu.com/jquery/1.9.0/jquery.js
2 、编写显示子菜单函数,使用$,并通过class名获取一级菜单li,过children()找到li的孩子元素ul,使用show()方法,显示二级菜单。
3、编写隐藏子菜单函数,使用$,并通过class名获取一级菜单li,过children()找到li的孩子元素ul,使用hide()方法, 隐藏二级菜单。
4、做浏览器兼容性测试,至少五个浏览器。IE7,8,9,火狐,谷歌,2345浏览器等。

先来看看效果图:

jQuery实现二级下拉菜单效果

最后我们来看看代码的情况,和前面的区别不大:
HTML代码:

<!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>下拉菜单</title> 
<link rel="stylesheet" type="text/css" href="style.css" /> 
<!--引用百度服务器的jQuery库--> 
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> 
<script type="text/javascript" src="script.js"></script> 
</head> 
 
<body> 
<div id="nav" class="nav"> 
  <ul> 
    <li><a href="#">网站首页</a></li> 
   <li class="navmenu"><a href="#">课程大厅</a> 
    <ul> 
     <li><a href="#">JavaScript</a></li> 
     <li><a href="#">jQuery</a></li> 
     <li><a href="#">Ajax</a></li> 
    </ul> 
   </li> 
   <li class="navmenu"><a href="#">学习中心</a> 
    <ul> 
     <li><a href="#">视频学习</a></li> 
     <li><a href="#">案例学习</a></li> 
     <li><a href="#">交流平台</a></li> 
    </ul> 
   </li> 
   <li><a href="#">经典案例</a></li> 
   <li><a href="#">关于我们</a></li> 
  </ul> 
</div> 
</body> 
</html>

CSS样式表外部style.css文件代码:

/*CSS全局设置*/ 
*{ 
 margin:0; 
 padding:0; 
} 
.nav{ 
 background-color:#EEEEEE; 
 height:40px; 
 width:450px; 
 margin:0 auto; 
} 
ul{ 
 list-style:none; 
} 
ul li{ 
 float:left; 
 line-height:40px; 
 text-align:center; 
} 
a{ 
 text-decoration:none; 
 color:#000000; 
 display:block; 
 width:90px; 
 height:40px; 
} 
a:hover{ 
 background-color:#666666; 
 color:#FFFFFF; 
} 
ul li ul li{ 
 float:none; 
 background-color:#EEEEEE; 
} 
ul li ul{ 
 display:none; 
} 
/*为了兼容IE7写的CSS样式,但是必须写在a:hover前面*/ 
ul li ul li a:link,ul li ul li a:visited{ 
 background-color:#EEEEEE; 
} 
ul li ul li a:hover{ 
 background-color:#009933; 
}

JS脚本外部script,js文件代码:

$(function(){ 
  $(".navmenu").mouseover(function(){ 
   $(this).children("ul").show();  
  }) 
  
  $(".navmenu").mouseout(function(){ 
   $(this).children("ul").hide(); 
  }) 
})

希望本文所述对大家学习jquery程序设计有所帮助。

Javascript 相关文章推荐
Javascript 表单之间的数据传递代码
Dec 04 Javascript
javascript 兼容鼠标滚轮事件
Apr 07 Javascript
js 模拟实现类似c#下的hashtable的简单功能代码
Jan 24 Javascript
javascript中最常用的继承模式 组合继承
Aug 12 Javascript
jQuery bind事件使用详解
May 05 Javascript
JQuery实现用户名无刷新验证的小例子
Mar 22 Javascript
jQuery插件实现大图全屏图片相册
Mar 14 Javascript
Jquery实现仿京东商城省市联动菜单
Nov 19 Javascript
JavaScript仿支付宝6位数字密码输入框
Dec 29 Javascript
webpack入门必知必会
Jan 16 Javascript
使用pm2自动化部署node项目的方法步骤
Jan 28 Javascript
详解webpack引用jquery(第三方模块)的三种办法
Aug 21 jQuery
基于JavaScript实现简单的随机抽奖小程序
Jan 05 #Javascript
jquery中ajax处理跨域的三大方式
Jan 05 #Javascript
基于JavaScript代码实现随机漂浮图片广告
Jan 05 #Javascript
多个js毫秒倒计时同时进行效果
Jan 05 #Javascript
在WordPress中加入Google搜索功能的简单步骤讲解
Jan 04 #Javascript
实例详解jQuery结合GridView控件的使用方法
Jan 04 #Javascript
jQuery EasyUI之DataGrid使用实例详解
Jan 04 #Javascript
You might like
PHP令牌 Token改进版
2008/07/18 PHP
PHP COOKIE设置为浏览器进程
2009/06/21 PHP
简单实用的网站PHP缓存类实例
2014/07/18 PHP
smarty模板引擎之配置文件数据和保留数据
2015/03/30 PHP
阿里对象存储OSS在laravel框架中的使用方法
2019/10/13 PHP
javascript编程起步(第四课)
2007/01/10 Javascript
js对象之JS入门之Array对象操作小结
2011/01/09 Javascript
javascript一些实用技巧小结
2011/03/18 Javascript
JavaScript闭包 懂不懂由你反正我是懂了
2011/10/21 Javascript
JavaScript 图像动画的小demo
2012/05/23 Javascript
node.js解决获取图片真实文件类型的问题
2014/12/20 Javascript
jQuery关键词说明插件cluetip使用指南
2015/04/21 Javascript
jQuery的animate函数实现图文切换动画效果
2015/05/03 Javascript
JavaScript模板引擎用法实例
2015/07/10 Javascript
js带点自动图片轮播幻灯片特效代码分享
2015/09/07 Javascript
js图片轮播手动切换效果
2015/11/10 Javascript
Jquery ajax 同步阻塞引起的UI线程阻塞问题
2015/11/17 Javascript
详解AngularJS中的表单验证(推荐)
2016/11/17 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
angularjs结合html5实现拖拽功能
2018/06/25 Javascript
javascript刷新父页面方法汇总详解
2019/10/10 Javascript
[51:27]LGD vs Liquid 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
零基础写python爬虫之神器正则表达式
2014/11/06 Python
Python中os.path用法分析
2015/01/15 Python
python 实现一个贴吧图片爬虫的示例
2017/10/12 Python
python生成随机图形验证码详解
2017/11/08 Python
python3使用matplotlib绘制条形图
2020/03/25 Python
python“静态”变量、实例变量与本地变量的声明示例
2020/11/13 Python
CSS3感应鼠标的背景闪烁和图片缩放动画效果
2014/05/14 HTML / CSS
好的自荐信包括什么内容
2013/11/07 职场文书
班子四风对照检查材料
2014/08/21 职场文书
公司授权委托书样本
2014/09/15 职场文书
教师思想作风整顿个人剖析材料
2014/10/10 职场文书
2014年学生会工作总结范文
2014/11/07 职场文书
2015年安全生产管理工作总结
2015/05/25 职场文书
Java面试题冲刺第十六天--消息队列
2021/08/07 面试题