jquery实现清新实用的网页菜单效果


Posted in Javascript onAugust 28, 2015

本文实例讲述了jquery实现清新实用的网页菜单效果。分享给大家供大家参考。具体如下:

这是一款应用了jQuery插件来实现的网页菜单,看上去十分清新实用,来自美国Flickr网站,不知道Flickr网站的朋友自己去查。这款菜单在用户点击了主菜单项的时候,会滑出二级的子菜单,菜单前边带有小图标,增加了人性化体验。

运行效果截图如下:

jquery实现清新实用的网页菜单效果

在线演示地址如下:

具体代码如下:

<!DOCTYPE HTML"> 
<html> 
 <head> 
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
 <title>JQuery Flickr Tooltip Menu二级菜单</title> 
 <script type="text/javascript" src="jquery-1.6.2.min.js"></script> 
 <script type="text/javascript"> 
  $(function() {
  $(".btmiddle").click(function() {
   if ($(".btmiddle").hasClass("bt")) {
   $(".btmiddle").removeClass("bt");
   $(".btmiddle").addClass("clicked");
   $("#menu").show();
   } else {
   $(".btmiddle").removeClass("clicked");
   $(".btmiddle").addClass("bt");
   $("#menu").hide();
   }
  });
  });
 </script> 
 <style type="text/css"> 
* {
 font-family: Arial, "Free Sans";
}
#box {
 margin-top: 20px;
}
.bt, .clicked {
 height: 20px;
 color: #666;
 font-size: 13px;
 padding: 4px 10px;
 text-decoration: none;
 background: #f9f9f9;
}
#box .bt {
 background: -moz-linear-gradient(top, #fff, #f3f3f3);
 background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f3f3f3));
 /* For Internet Explorer 5.5 - 7 */
 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffff, endColorstr=#f3f3f3);
 /* For Internet Explorer 8 */
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffff, endColorstr=#f3f3f3)";
}
#box .bt:hover {
 background: #f3f3f3;
 background: -moz-linear-gradient(top, #fff, #e9e9e9);
 background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e9e9e9));
 /* For Internet Explorer 5.5 - 7 */
 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffff, endColorstr=#e9e9e9);
 /* For Internet Explorer 8 */
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffff, endColorstr=#e9e9e9)";
}
#box .bt:active, .clicked {
 background: #e9e9e9;
 background: -moz-linear-gradient(top, #e9e9e9, #fff);
 background: -webkit-gradient(linear, left top, left bottom, from(#e9e9e9), to(#fff));
 /* For Internet Explorer 5.5 - 7 */
 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#e9e9e9, endColorstr=#ffffff);
 /* For Internet Explorer 8 */
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#e9e9e9, endColorstr=#ffffff)";
}
.btleft {
 border: 1px solid #e3e3e3;
 -webkit-border-radius: .5em 0 0 .5em;
 -moz-border-radius: .5em 0 0 .5em;
 border-radius: .5em 0 0 .5em;
}
.btleft span {
 font-size: 15px;
}
.btmiddle {
 border: 1px solid #e3e3e3;
 border-width: 1px 0;
 margin: 0 -4px;
}  
.btright {
 border: 1px solid #e3e3e3;
 -webkit-border-radius: 0 .5em .5em 0;
 -moz-border-radius: 0 .5em .5em 0;
 border-radius: 0 .5em .5em 0;
}
.btmiddle span, .btright span {
 font-size: 9px;
 position: relative;
 top: -2px;
}
#menu {
 margin: 10px 0 0 100px;
 display: none;
}
#triangle {
 border: 1px solid #d9d9d9;
 border-width: 2px 0 0 2px;
 width:10px;
 height:10px;
 /* for firefox, safari, chrome, etc. */
 -webkit-transform: rotate(45deg);
 -moz-transform: rotate(45deg);
 -o-transform:rotate(45deg);
 z-index: 1;
 position: relative;
 bottom: -4px;
 margin-left: 25px;
 background: #fff;
}
#tooltip_menu {
 background: #fff;
 -webkit-border-radius: .5em;
 -moz-border-radius: .5em;
 border-radius: .5em;
 width: 220px;
 -webkit-box-shadow: 0px 0px 3px rgba(0,0,0,.5);
 -moz-box-shadow: 0px 0px 3px rgba(0,0,0,.5);
 box-shadow: 0px 0px 3px rgba(0,0,0,.5);
 padding: 2px;
}
#tooltip_menu a {
 z-index: 2;
 padding: 0 0 7px 2px;
 display: block;
 text-decoration: none;
 color: #0066cc;
 font-size: 13px;
}
#tooltip_menu a:hover {
 background: #0066cc;
 color: #fff;
}
#tooltip_menu a img {
 position: relative;
 top: 5px;
 border: 0;
}
.menu_top {
 -webkit-border-radius: .5em .5em 0 0;
 -moz-border-radius: .5em .5em 0 0;
 border-radius: .5em .5em 0 0;
}
.menu_bottom {
 -webkit-border-radius: 0 0 .5em .5em;
 -moz-border-radius: 0 0 .5em .5em;
 border-radius: 0 0 .5em .5em;
}
#links {
  padding: 10px;
}
#links a {
  font-size: 11px;
  color: #0066cc;
}
#links a:hover {
  text-decoration: none;
}
</style> 
</head> 
<body> 
<div id="box"> 
 <a href="#" class="bt btleft"><span>☆</span> Favorite</a> 
 <a href="#" class="bt btmiddle">Actions <span>▼</span></a> 
 <a href="#" class="bt btright">Share this <span>▼</span></a> 
</div> 
<div id="menu"> 
 <div id="triangle"></div> 
 <div id="tooltip_menu"> 
 <a href="#" class="menu_top"> 
  <img src="images/1.png"/> 
  View all sizes
 </a> 
 <a href="#"> 
  <img src="images/2.png"/> 
  View slideshow
 </a> 
 <a href="#" class="menu_bottom"> 
  <img src="images/3.png"/> 
  View Exif info
 </a> 
 </div> 
</div> 
</body> 
</html>

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

Javascript 相关文章推荐
页面加载完后自动执行一个方法的js代码
Sep 06 Javascript
JavaScript使用indexOf获得子字符串在字符串中位置的方法
Apr 06 Javascript
JavaScript判断FileUpload控件上传文件类型
Sep 28 Javascript
JavaScript ParseFloat()方法
Dec 18 Javascript
canvas实现绘制吃豆鱼效果
Jan 12 Javascript
jquery中each循环的简单回滚操作
May 05 jQuery
JS实现的文件拖拽上传功能示例
May 21 Javascript
JavaScript设计模式之缓存代理模式原理与简单用法示例
Aug 07 Javascript
vue.js 实现点击按钮动态添加li的方法
Sep 07 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
Nov 12 jQuery
解决vue单页面应用中动态修改title问题
Jun 09 Javascript
通过js随机函数Math.random实现乱序
May 19 Javascript
jquery左右全屏大尺寸多图滑动效果代码分享
Aug 28 #Javascript
jQuery实现多级下拉菜单jDropMenu的方法
Aug 28 #Javascript
js实现简单折叠、展开菜单的方法
Aug 28 #Javascript
web前端开发JQuery常用实例代码片段(50个)
Aug 28 #Javascript
js实现超简单的展开、折叠目录代码
Aug 28 #Javascript
js实现带圆角的多级下拉菜单效果
Aug 28 #Javascript
jquery实现超简洁的TAB选项卡效果代码
Aug 28 #Javascript
You might like
php中用memcached实现页面防刷新功能
2014/08/19 PHP
destoon文章模块调用企业会员资料的方法
2014/08/22 PHP
php+mysql删除指定编号员工信息的方法
2015/01/14 PHP
自动完成JS类(纯JS, Ajax模式)
2009/03/12 Javascript
jQuery中的height innerHeight outerHeight区别示例介绍
2014/06/15 Javascript
checkbox选中与未选中判断示例
2014/08/04 Javascript
使用RequireJS优化JavaScript引用代码的方法
2015/07/01 Javascript
基于AngularJS实现iOS8自带的计算器
2016/09/12 Javascript
JavaScript 监控微信浏览器且自带返回按钮时间
2016/11/27 Javascript
js读取json文件片段中的数据实例
2017/03/09 Javascript
详解vue-cli + webpack 多页面实例应用
2017/04/25 Javascript
详解VUE 对element-ui中的ElTableColumn扩展
2018/03/28 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
2018/07/25 Javascript
Vue+Element实现表格编辑、删除、以及新增行的最优方法
2019/05/28 Javascript
基于JS实现一个随机生成验证码功能
2019/05/29 Javascript
vue+vant实现商品列表批量倒计时功能
2020/01/13 Javascript
javascript设计模式 ? 工厂模式原理与应用实例分析
2020/04/09 Javascript
vite2.0+vue3移动端项目实战详解
2021/03/03 Vue.js
[02:43]DOTA2英雄基础教程 圣堂刺客
2013/12/09 DOTA
利用QT写一个极简单的图形化Python闹钟程序
2015/04/07 Python
python通过imaplib模块读取gmail里邮件的方法
2015/05/08 Python
python万年历实现代码 含运行结果
2017/05/20 Python
Python3最长回文子串算法示例
2019/03/04 Python
使用Python操作FTP实现上传和下载的方法
2019/04/01 Python
python抓取搜狗微信公众号文章
2019/04/01 Python
Python使用APScheduler实现定时任务过程解析
2019/09/11 Python
浅谈keras的深度模型训练过程及结果记录方式
2020/01/24 Python
查看jupyter notebook每个单元格运行时间实例
2020/04/22 Python
python tkinter的消息框模块(messagebox,simpledialog)
2020/11/07 Python
介绍一下结构化程序设计方法和面向对象程序设计方法的区别
2012/06/27 面试题
2014年英语教学工作总结
2014/12/17 职场文书
简短的36句中秋节祝福信息语句
2019/09/09 职场文书
mysql如何配置白名单访问
2021/06/30 MySQL
7个关于Python的经典基础案例
2021/11/07 Python
关于MybatisPlus配置双数据库驱动连接数据库问题
2022/01/22 Java/Android
MySQL数据库优化之通过索引解决SQL性能问题
2022/04/10 MySQL