基于jquery的大众点评,分类导航实现代码


Posted in Javascript onAugust 23, 2011

        简单   轻盈    快速    高效!

基于jquery的大众点评,分类导航实现代码
html结构:

<div id="menu"> 
<ul id="G_chan-panel" class="pop-panel pp_channels Fix" style="position: absolute; visibility: visible; z-index: 1001; top: 175px; left: 189px; "> 
<li class="root-item "> <a href="#" class="root-name"><span>餐饮</span></a> 
<ul class="pop-panel Fix sub-list"> 
<li class="main-cate"><a href="#">餐饮频道</a></li> 
<li><a href="#">粤菜</a></li> 
... 
</ul> 
</li> 
<li class="root-item"> <a href="#" class="root-name"><span>购物</span></a> 
<ul class="pop-panel Fix sub-list"> 
<li class="main-cate"><a href="#">购物频道</a></li> 
<li><a href="#">超市/便利店</a></li> 
... 
<li><a href="#">其他</a></li> 
</ul> 
</li> 
</ul> 
</div>

jquery代码:
<script type="text/javascript"> 
$(function () { 
$('#G_chan-panel').delegate("li", "mouseenter", function () { $(this).addClass("active") }); 
$('#G_chan-panel').delegate("li", "mouseleave", function () { $(this).removeClass("active") }); 
}); 
</script>

css样式:
BODY { 
background-color:#fff; 
color:#555; 
font: 9pt/14px Tahoma, "宋体", Arial, Helvetica, Sans-Serif; 
letter-spacing: 0; 
margin: 0; 
} 
html, body, ul, ol, li, dl, dt, dd, p, h1, h2, h3, h4, h5, h6, a, img, th, td, form, fieldset, iframe, object, pre, code, legend, blockquote { 
border: 0 none; 
margin: 0; 
outline: 0 none; 
padding: 0; 
} 
h1, h2, h3, h4, h5, h6 { 
font-size: 100%; 
font-weight: normal; 
} 
UL, LI { 
list-style: none outside none; 
margin: 0; 
padding: 0; 
} 
IMG { 
border: medium none; 
margin: 0; 
padding: 0; 
cursor:pointer; 
} 
input, img, select { 
vertical-align: middle; 
} 
A { 
color: #666666; 
} 
A:link { 
color: #666666; 
text-decoration: none; 
} 
A:visited { 
color: #666666; 
text-decoration: none; 
} 
A:hover { 
color: #C90809; 
text-decoration: none; 
} 
/*导航*/ 
.pp_channels .root-item, .pp_channels .root-name, .pp_channels .root-name span, .pp_channels .sub-list li a { 
background-image: url("bg.png"); 
background-repeat: no-repeat; 
} 
.G_chan-panel { 
position: absolute; 
z-index: 1000; 
top: 120px; 
left: 199px; 
visibility: hidden; 
} 
.pp_channels { 
width: 138px; 
padding: 0; 
border-width: 0 0 2px 1px; 
border-radius: 5px; 
-webkit-border-radius: 5px; 
-moz-border-radius: 5px; 
-moz-box-shadow: -1px 1px 1px #ccc; 
-webkit-box-shadow: 0 1px 5px #ccc; 
box-shadow: 0 1px 5px #ccc; 
} 
.pp_channels .root-item { 
zoom: 1; 
position: relative; 
width: 139px; 
height: 34px; 
background-position: -13px -373px; 
overflow: visible; 
vertical-align: middle; 
} 
.pp_channels .root-name { 
display: block; 
z-index: 1001; 
position: relative; 
border-top:1px solid #B9F5D2; 
padding-left: 10px; 
background-position: -10px -358px; 
cursor: pointer; 
} 
.pp_channels .root-name span { 
display: block; 
border-right: 1px solid #B9F5D2; 
padding-left: 9px; 
height: 34px; 
font-size: 1.2em; 
line-height: 34px; 
color: #000; 
background-position: -167px -358px; 
} 
.pp_channels .active .root-name { 
background: #fff; 
} 
.pp_channels .active .root-name span { 
color: #C00; 
border-color: #fff; 
} 
.pp_channels .no-sub .root-name span { 
border-color: #fff; 
background-position: 20px -358px; 
} 
.pp_channels .sub-list { 
left: 138px; 
top: -34px; 
padding: 5px 2px 5px 16px; 
width: 200px; 
overflow: hidden; 
_top: -35px; 
-moz-box-shadow: -1px 1px 1px #ccc; 
-webkit-box-shadow: 0 1px 5px #ccc; 
box-shadow: 0 1px 5px #ccc; 
} 
.pp_channels .active .sub-list { 
visibility: visible; 
} 
.pp_channels .sub-list li { 
float: left; 
width: 83px; 
margin: 0 10px 5px 0; 
} 
.pp_channels .sub-list .main-cate { 
width: 200px; 
margin-right: -10px; 
font-weight: bold; 
} 
.pp_channels .sub-list a { 
padding-left: 3px; 
line-height: 21px; 
background-position: -169px -418px; 
*background-position: -169px -420px; 
} 
.pp_channels .sub-list a: hover { 
background-position: -169px -438px; 
*background-position: -169px -440px; 
} 
.pop-panel { 
z-index: 1000; 
position: absolute; 
visibility: hidden; 
border: 1px solid #B9F5D2; 
padding: 5px 9px; 
background: #fff; 
color: #61646E; 
#margin-left:-0px; 
_margin-left:-0px; 
} 
.pop-panel a { 
color: #61646E; 
} 
.pop-panel a: hover { 
text-decoration:none; 
color: #C00; 
}

其他一些应用:
//定位 
var X = $('#G_chan').offset().top; 
var Y = $('#G_chan').offset().left; 
$("#G_chan-panel").offset({ top: X + 36, left: Y - 5 }); 
//鼠标经过 动画效果 防点击链接跳转 
$("#G_chan").hover(function (event) { 
event || event.stopPropagation(); $("#G_chan-panel").slideDown().mouseleave(function () { 
$(this).slideUp() 
}); 
}); 
//点击 城市列表 下拉动画 防冒泡 
$("#G_loc").click(function (event) { event.preventDefault(); $("#G_loc-panel").slideToggle("slow"); });作者:曾祥展
Javascript 相关文章推荐
几个高效,简洁的字符处理函数
Apr 12 Javascript
JavaScript使用cookie记录临时访客信息的方法
Apr 07 Javascript
使用AngularJS创建单页应用的编程指引
Jun 19 Javascript
JS验证图片格式和大小并预览的简单实例
Oct 11 Javascript
详解JavaScript 中getElementsByName在IE中的注意事项
Feb 21 Javascript
vue router2.0二级路由的简单使用
Jul 05 Javascript
layui获取多选框中的值方法
Aug 15 Javascript
纯javascript实现选择框的全选与反选功能
Apr 08 Javascript
微信小程序bindinput与bindsubmit的区别实例分析
Apr 17 Javascript
JS左右无缝轮播功能完整实例
May 16 Javascript
javascript实现简易聊天室
Jul 12 Javascript
Vue filter 过滤器、以及在table中的使用介绍
Sep 07 Javascript
20个非常棒的 jQuery 幻灯片插件和教程分享
Aug 23 #Javascript
基于jquery实现的鼠标拖拽元素复制并写入效果
Aug 23 #Javascript
一些有用的JavaScript和jQuery的片段分享
Aug 23 #Javascript
Fastest way to build an HTML string(拼装html字符串的最快方法)
Aug 20 #Javascript
jQuery最佳实践完整篇
Aug 20 #Javascript
jQuery的deferred对象使用详解
Aug 20 #Javascript
优化innerHTML操作(提高代码执行效率)
Aug 20 #Javascript
You might like
PHILIPS D1835/D1875的电路分析与打理
2021/03/02 无线电
过滤掉PHP数组中的重复值的实现代码
2011/07/17 PHP
排序算法之PHP版快速排序、冒泡排序
2014/04/09 PHP
PHP使用内置函数生成图片的方法详解
2016/05/09 PHP
PHP实现的AES双向加密解密功能示例【128位】
2018/09/03 PHP
PHP中define() 与 const定义常量的区别详解
2019/06/25 PHP
用JS判别浏览器种类以及IE版本的几种方法小结
2011/08/02 Javascript
javascript实现可改变滚动方向的无缝滚动实例
2013/06/17 Javascript
node.js中的path.resolve方法使用说明
2014/12/08 Javascript
浅谈JavaScript中的string拥有方法的原因
2015/08/28 Javascript
AngularJS ng-app 指令实例详解
2016/07/30 Javascript
AngularJS 与百度地图的结合实例
2016/10/20 Javascript
JS触摸屏网页版仿app弹窗型滚动列表选择器/日期选择器
2016/10/30 Javascript
ES6新特性之解构、参数、模块和记号用法示例
2017/04/01 Javascript
JavaScript设计模式之代理模式详解
2017/06/09 Javascript
JS关于刷新页面的相关总结
2018/05/09 Javascript
JS实现简单的星期格式转换功能示例
2018/07/23 Javascript
在vue中v-bind使用三目运算符绑定class的实例
2018/09/29 Javascript
微信小程序mpvue点击按钮获取button值的方法
2019/05/29 Javascript
JS 封装父页面子页面交互接口的实例代码
2019/06/25 Javascript
解决vue自定义全局消息框组件问题
2019/11/22 Javascript
vue+iview框架实现左侧动态菜单功能的示例代码
2020/07/23 Javascript
python修改操作系统时间的方法
2015/05/18 Python
面向初学者的Python编辑器Mu
2018/10/08 Python
python的set处理二维数组转一维数组的方法示例
2019/05/31 Python
sklearn中的交叉验证的实现(Cross-Validation)
2021/02/22 Python
Interflora澳大利亚:同日鲜花速递
2019/06/25 全球购物
亚洲航空公司官方网站:AirAsia
2019/11/25 全球购物
C/C++程序员常见面试题二
2015/11/19 面试题
致裁判员加油稿
2014/02/08 职场文书
幼儿园教师师德师风演讲稿:爱我所爱 无悔青春
2014/09/10 职场文书
综治工作汇报材料
2014/10/27 职场文书
会计求职信怎么写
2015/03/20 职场文书
分家协议书范本
2016/03/22 职场文书
2019年消防宣传标语集锦
2019/11/21 职场文书
python manim实现排序算法动画示例
2022/08/14 Python