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 命名规则 变量命名规则
Feb 25 Javascript
比Jquery的document.ready更快的方法
Apr 28 Javascript
Document对象内容集合(比较全)
Sep 06 Javascript
JQuery使用index方法获取Jquery对象数组下标的方法
May 18 Javascript
javascript同步服务器时间和同步倒计时小技巧
Sep 24 Javascript
JS hashMap实例详解
May 26 Javascript
JavaScript实现的CRC32函数示例
Nov 23 Javascript
Bootstrap模态框案例解析
Mar 05 Javascript
React Native使用fetch实现图片上传的示例代码
Mar 07 Javascript
Vue响应式原理Observer、Dep、Watcher理解
Jun 06 Javascript
使用Phantomjs和Node完成网页的截屏快照的方法
Jul 16 Javascript
JS实现点星星消除小游戏
Mar 24 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处理图片变得简单 基于gb库的图片处理类附实例代码下载
2011/05/17 PHP
Smarty局部缓存的几种方法简介
2014/06/17 PHP
codeigniter显示所有脚本执行时间的方法
2015/03/21 PHP
JSON两种结构之对象和数组的理解
2016/07/19 PHP
PHP单例模式定义与使用实例详解
2017/02/06 PHP
php正则提取html图片(img)src地址与任意属性的方法
2017/02/08 PHP
修改file按钮的默认样式实现代码
2013/04/23 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
jQuery事件用法实例汇总
2014/08/29 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
2015/02/13 Javascript
Angular2内置指令NgFor和NgIf详解
2016/08/03 Javascript
jQuery实现动态添加tr到table的方法
2016/12/26 Javascript
JavaScript字符串对象
2017/01/14 Javascript
Angularjs中使用指令绑定点击事件的方法
2017/03/30 Javascript
jQuery实现按比例缩放图片的方法
2017/04/29 jQuery
vue router2.0二级路由的简单使用
2017/07/05 Javascript
浅谈webpack对样式的处理
2018/01/05 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
微信小程序蓝牙连接小票打印机实例代码详解
2019/06/03 Javascript
微信小程序顶部导航栏可滑动并选中放大
2019/12/05 Javascript
JavaScript中数组去重的5种方法
2020/07/04 Javascript
微信小程序实现自定义底部导航
2020/11/18 Javascript
[01:15:16]DOTA2-DPC中国联赛 正赛 Elephant vs Aster BO3 第一场 1月26日
2021/03/11 DOTA
Python 的 Socket 编程
2015/03/24 Python
Windows下Python的Django框架环境部署及应用编写入门
2016/03/10 Python
Python 绘图和可视化详细介绍
2017/02/11 Python
Python实现一个简单的验证码程序
2017/11/03 Python
pandas DataFrame 警告(SettingWithCopyWarning)的解决
2019/07/23 Python
python3中eval函数用法使用简介
2019/08/02 Python
Python configparser模块常用方法解析
2020/05/22 Python
英国文胸专家:AmpleBosom.com
2018/02/06 全球购物
主题党日活动总结
2014/07/08 职场文书
党员民主生活会个人整改措施材料
2014/09/16 职场文书
新郎接新娘保证书
2015/05/08 职场文书
大学宣传委员竞选稿
2015/11/19 职场文书
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python