码迷,mamicode.com
首页 > Web开发 > 详细

jquery导航动画

时间:2015-05-07 10:02:49      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:

经常在网上看到的,鼠标在导航上移动时,导航底部的横条会自动移动到鼠标悬浮的导航项上。

效果如下图:

技术分享

利用jquery的 animate 函数,很好实现。代码很简单!

代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>测试</title>
    <script src="http://libs.useso.com/js/jquery/1.9.1/jquery.min.js"></script>
</head>
<body>
<div class="nav" style="margin: 100px auto; width:960px;">
<a class="active" href="#">首页</a>
<a href="#">产品</a>
<a href="#">新闻中心</a>
<a href="#">关于我们</a>
<a href="#">联系我们</a>
<a href="#">首页</a>
<a href="#">首页</a>
<div class="line"></div>
</div>
<style>

.nav{
    position:relative;
}
.nav a{
    padding:10px 20px;
    border-bottom:solid 3px #fff;
    text-decoration: none;
    color:#666;
}
.nav a:hover{
    color:#66f;
}
.nav .active, .nav .active:hover{
    color:#f33;
}
.nav .line{
    position:absolute;
    border-top:solid 2px red;
    width:0;
    left:0;
    top:0;
}

</style>
<script>

function navLine(o, bo)
{
    var x = ‘‘ + (o.position().top + o.outerHeight() - 2) + px;
    var y = ‘‘ + o.position().left + px;
    var w = ‘‘ + o.outerWidth() + px;
    var h = 2px;
    $(.nav .line).stop();
    
    if (bo)
    {
        $(.nav .line).css({width:w, height:h, top:x, left:y});
    }
    else
    {
        $(.nav .line).animate({width:w, height:h, top:x, left:y});
    }
}

$(function(){
    navLine($(.nav .active), true);
    $(.nav a).hover(function(){
        navLine($(this));
    }, function(){
        navLine($(.nav .active));
    });
});

</script>
</body>
</html>

 

下载地址:http://files.cnblogs.com/files/zjfree/jsNavMove.rar

 

jquery导航动画

标签:

原文地址:http://www.cnblogs.com/zjfree/p/4483965.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!