有时,一个网站的导航菜单文字不能提供足够的信息,来表达当前菜单按钮的内容,一般的解决办法是使用提示信息ToolTip,那么本文介绍的流动导航菜单Fluid Navigation也可以解决此问题,同时也为网站设计的添加了一些时尚而又动感元素。那么我们应该如何实现流动导航菜单呢?
一、效果图
鼠标滑过Menu,即Show提示信息。
二、实现步骤
1、CSS代码
menuBarHolder { width : 730px ; height : 45px ; background-color : #000 ; color : #fff ;
font-family : Arial ; font-size : 14px ; margin-top : 20px ; }
#menuBarHolder ul { list-style-type : none ; display : block ; }
#container { margin-top : 100px ; }
#menuBar li { float : left ; padding : 15px ; height : 16px ; width : 50px ;
border-right : 1px solid #ccc ; }
#menuBar li a { color : #fff ; text-decoration : none ; letter-spacing : -1px ; font-weight : bold ; }
.menuHover { background-color : #999 ; }
.firstchild { border-left : 1px solid #ccc ; }
.menuInfo { cursor : hand ; background-color : #000 ; color : #fff ;
width : 74px ; font-size : 11px ; height : 100px ; padding : 3px ; display : none ;
position : absolute ; margin-left : -15px ; margin-top : -15px ;
-moz-border-radius-bottomright : 5px ;
-moz-border-radius-bottomleft : 5px ;
-webkit-border-bottom-left-radius : 5px ;
-webkit-border-bottom-right-radius : 5px ;
-khtml-border-radius-bottomright : 5px ;
-khtml-border-radius-bottomleft : 5px ;
border-radius-bottomright : 5px ;
border-radius-bottomleft : 5px ;
menuBarHolder: 菜单Menu的固定容器,宽度=730px。
menuInfo:控制提示信息的展示与否。
2、HTML代码
< div id ="menuBarHolder" >
< ul id ="menuBar" >
< li class ="firstchild" >< a href ="javascript:#" > Home </ a >
< div class ="menuInfo" > I am some text about the home section </ div ></ li >
< li >< a href ="javascript:#" > Services </ a >
< div class ="menuInfo" > I am some text about the services section </ div ></ li >
< li >< a href ="javascript:#" > Clients </ a >
< div class ="menuInfo" > I am some text about the clients section </ div ></ li >
< li >< a href ="javascript:#" > Portfolio </ a >
< div class ="menuInfo" > I am some text about the portfolio section </ div ></ li >
< li >< a href ="javascript:#" > About </ a >
< div class ="menuInfo" > I am some text about the about section </ div ></ li >
< li >< a href ="javascript:#" > Blog </ a >
< div class ="menuInfo" > I am some text about the blog section </ div ></ li >
< li >< a href ="javascript:#" > Follow </ a >
< div class ="menuInfo" > I am some text about the follow section </ div ></ li >
< li >< a href ="javascript:#" > Contact </ a >
< div class ="menuInfo" > I am some text about the contact section </ div ></ li >
</ ul >
</ div >
</ div >
UI LI元素:列表元素。
DIV元素:提示内容信息。
3、Javascript代码
代码
$(document).ready( function ()
{
$( ' #menuBar li ' ).click( function ()
{
var url = $( this ).find( ' a ' ).attr( ' href ' );
document.location.href = url;
});
$( ' #menuBar li ' ).hover( function ()
{
$( this ).find( ' .menuInfo ' ).slideDown();
},
function ()
{
$( this ).find( ' .menuInfo ' ).slideUp();
});
});
click()、 hover():给Li元素绑定单击事件和鼠标滑过事件。
find()函数:搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。
slideDown(speed, [callback]):通过高度变化(向下增大)来动态地显示所有匹配的元素,在显示完成后可选地触发一个回调函数。
slideUp(speed, [callback]):通过高度变化(向上减小)来动态地隐藏所有匹配的元素,在隐藏完成后可选地触发一个回调函数。
演示地址:http://addyosmani.com/resources/fluid-menu/fluid-menu.html
下载地址:http://addyosmani.com/resources/fluid-menu/fluid-menu.zip
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
暂无评论内容