jquery实现像栅栏一样左右滑出式二级菜单效果代码


Posted in Javascript onAugust 24, 2015

本文实例讲述了jquery实现像栅栏一样左右滑出式二级菜单效果代码。分享给大家供大家参考。具体如下:

这里演示了jquery实现像栅栏一样的左右滑出式二级菜单,会向左或向右滑出,支持中英文,使用时别忘了引入jquery插件。

运行效果截图如下:

jquery实现像栅栏一样左右滑出式二级菜单效果代码

在线演示地址如下:

具体代码如下:

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jQuery栅栏菜单左右划出菜单</title>
<title>Grooveshark风格的菜单</title>
<script type="text/javascript" src="jquery1.3.2.js"></script>
<script type="text/javascript">
//jquery.grooveshark.js
jQuery.fn.grooveshark = function() { 
 return this.each(function() {
  var raw = this;
  var elm = jQuery(this);
  var width = elm.width();
  var tel = 1;
  var smw = (width - 150) + 'px';
  jQuery('.ui-gs-panel', raw).css('left', width + 'px').hide();
  jQuery('.ui-gs-panel li', raw).css(width, smw);
  jQuery('.ui-gs-main li', raw).click(function() {
   var panel = jQuery(this).attr('rel');
   jQuery('.ui-gs-main li', raw).each(function() {
    var el = jQuery(this);
    if(el.hasClass('ui-active')) el.removeClass('ui-active');
   });
   jQuery(this).addClass('ui-active');
   jQuery('.ui-gs-main', raw).animate({ width: "150px" }, 1000);
   jQuery('.' + panel, raw).css('z-index', tel += 1).show().animate({ 'left': '150px' }, 1000, function() {
    jQuery('.ui-gs-panel', raw).each(function() {
     if(jQuery(this).hasClass(panel) == false) {
      jQuery(this).css('left', width + 'px');
      jQuery(this).css('z-index', '1');
      jQuery(this).hide();
     }
    });
   });
  });
 });
};
jQuery.fn.backhome = function() {
 return this.each(function() {
  var raw = this;
  var width = jQuery(raw).width();
  jQuery('.ui-active', raw).each(function() {
   jQuery(this).removeClass('.ui-active');
  });
  jQuery('.ui-gs-main', raw).animate({width: '100%'}, 1000).removeClass('ui-active');
   jQuery('.ui-gs-panel', raw).each(function() {
   jQuery(this).animate({'left': width + 'px'}, 1000, function() {
    $(this).hide();
   });
  });
 });
};
</script>
<style type="text/css">
body{font: 12px "Century Gothic", Tahoma, Verdana, Arial, sans-serif;margin: 0;overflow-x: hidden;}
#container{display: block;width: 100%;height: 500px;border-top: 5px solid #ccc;border-bottom: 5px solid #ccc;overflow-x: hidden;position: relative;}
.ui-gs-main{display: block;width: 100%;overflow: hidden;position: absolute;top: 0;left: 0;}
.ui-gs-main ul{list-style: none;margin: 0;padding: 0;}
.ui-gs-main ul li{display: block;width: 100%;padding-top: 15px;padding-bottom: 15px;text-indent: 25px;border-bottom: 1px solid #ccc;}
.ui-gs-main ul li: hover{background: #f0f2f5;}
.ui-gs-panel{display: block;width: 100%;overflow: hidden;position: absolute;top: 0;left: 0;}
.ui-gs-panel ul{list-style: none;margin: 0;padding: 0;}
.ui-gs-panel ul li{display: block;width: 100%;padding-top: 15px;padding-bottom: 15px;text-indent: 25px;border-bottom: 1px solid #ccc;border-left: 1px solid #ccc;background: white;}
.ui-gs-panel ul li: hover{background: #f0f2f5;}
li.ui-active{background: #f0f2f5;}
</style>
<script type="text/javascript">
$(document).ready(function() {
 $('#container').grooveshark();
 $('#backhome').click(function() {
  $('#container').backhome();
 });
});
</script>
 </head>
 <body>
  <div id="container">
   <div class="ui-gs-main">
    <ul>
     <li rel="home">主页</li>
     <li rel="over_ons">作品</li>
     <li rel="portfolio">链接</li>
     <li rel="contact">联系</li>
    </ul>
   </div>
   <div class="ui-gs-panel home">
    <ul>
     <li>最新更新</li>
     <li>热点排行</li>
     <li>时事政治</li>
     <li>喜欢电影</li>
     <li>我的音乐</li>
     <li>我的收藏</li>
     <li>程序人生</li>
     <li>娱乐天地</li>
     <li>婚姻生活</li>
     <li>五花八门</li>
    </ul>
   </div>
   <div class="ui-gs-panel over_ons">
    <ul>
     <li>jquery</li>
     <li>ASP</li>
     <li>PHP</li>
     <li>JAVA</li>
     <li>JSP</li>
     <li>AJAX</li>
     <li>ASP.NET</li>
     <li>VC++</li>
     <li>C#</li>
    </ul>
   </div>
   <div class="ui-gs-panel portfolio">
    <ul>
     <li>百度</li>
     <li>新浪</li>
     <li>网易</li>
     <li>腾讯</li>
     <li>搜狐</li>
     <li>天涯</li>
    </ul>
   </div>
   <div class="ui-gs-panel contact">
    <ul>
     <li>北京</li>
     <li>上海</li>
     <li>天津</li>
     <li>重庆</li>
     <li>成都</li>
     <li>广州</li>
     <li>常州</li>
     <li>深圳</li>
     <li>杭州</li>
     <li>无锡</li>
     <li>郑州</li>
     <li>武汉</li>
    </ul>
   </div>
  </div>
</body>
</html>

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

Javascript 相关文章推荐
深入理解Javascript动态方法调用与参数修改的问题
Dec 10 Javascript
jQuery Ajax 上传文件处理方式介绍(推荐)
Jun 30 Javascript
js实现StringBuffer的简单实例
Sep 02 Javascript
AngularJS全局scope与Isolate scope通信用法示例
Nov 22 Javascript
angularjs的select使用及默认选中设置
Apr 08 Javascript
微信小程序登录态控制深入分析
Apr 12 Javascript
详解Angular2组件之间如何通信
Jun 22 Javascript
十个免费的web前端开发工具详细整理
Sep 18 Javascript
基于webpack 实用配置方法总结
Sep 28 Javascript
JS正则表达式常见用法实例详解
Jun 19 Javascript
js form表单input框限制20个字符,10个汉字代码实例
Apr 12 Javascript
vue webpack build资源相对路径的问题及解决方法
Jun 04 Javascript
jQuery实现的fixedMenu下拉菜单效果代码
Aug 24 #Javascript
基于jquery实现在线选座订座之影院篇
Aug 24 #Javascript
js淡入淡出的图片轮播效果代码分享
Aug 24 #Javascript
jquery地址栏链接与a标签链接匹配之特效代码总结
Aug 24 #Javascript
jquery实现鼠标滑过显示二级下拉菜单效果
Aug 24 #Javascript
js实现的简洁网页滑动tab菜单效果代码
Aug 24 #Javascript
jquery+html5烂漫爱心表白动画代码分享
Aug 24 #Javascript
You might like
谈谈新手如何学习PHP
2006/12/14 PHP
如何判断php数组的维度
2013/06/10 PHP
php中explode的负数limit用法分析
2015/02/27 PHP
简单了解将WordPress中的工具栏移到底部的小技巧
2015/12/31 PHP
PHP7引入的&quot;??&quot;和&quot;?:&quot;的区别讲解
2019/04/08 PHP
Javascript 兼容firefox的一些问题
2009/05/21 Javascript
jQuery lazyload 的重复加载错误以及修复方法
2010/11/19 Javascript
jQuery学习笔记之jQuery选择器的使用
2010/12/22 Javascript
Javascript中call的两种用法实例
2013/12/13 Javascript
jQuery圆形统计图开发实例
2015/01/04 Javascript
jquery操作angularjs对象
2015/06/26 Javascript
jQuery的图片轮播插件PgwSlideshow使用详解
2016/08/11 Javascript
浅析jQuery操作select控件的取值和设值
2016/12/07 Javascript
详解微信小程序——自定义圆形进度条
2016/12/29 Javascript
使用异步组件优化Vue应用程序的性能
2019/04/28 Javascript
解决layer弹出层自适应页面大小的问题
2019/09/16 Javascript
Vue+element+cookie记住密码功能的简单实现方法
2020/09/20 Javascript
python多线程抓取天涯帖子内容示例
2014/04/03 Python
Python2和Python3中print的用法示例总结
2017/10/25 Python
Python实现合并同一个文件夹下所有PDF文件的方法示例
2018/04/28 Python
python 统计一个列表当中的每一个元素出现了多少次的方法
2018/11/14 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
python的turtle库使用详解
2019/05/10 Python
python 实现提取log文件中的关键句子,并进行统计分析
2019/12/24 Python
使用Python快速打开一个百万行级别的超大Excel文件的方法
2021/03/02 Python
深入浅析CSS3中的Flex布局整理
2020/04/27 HTML / CSS
JSF如何进行表格处理及取值
2012/08/06 面试题
ktv总经理岗位职责
2014/02/17 职场文书
卖房协议书
2014/04/11 职场文书
辅导员评语
2014/05/04 职场文书
董事长助理工作职责范本
2014/07/01 职场文书
应届生面试求职信
2014/07/02 职场文书
大学生见习报告总结
2014/11/04 职场文书
销售合作意向书范本
2015/05/08 职场文书
MySQL系列之十二 备份与恢复
2021/07/02 MySQL
springboot入门 之profile设置方式
2022/04/04 Java/Android