jquery导航动画

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

效果如下图:

利用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

时间: 2024-10-13 11:20:21

jquery导航动画的相关文章

一些必看的jQuery导航插件和教程

导航是一个网站最重要的元素之一,您必须遵循统一的风格来设计您的网站,特别是导航的风格,让用户可以轻松地找到他们想要的内容.这里最大的部分是开发一个菜单,即要直观易用,又要符合你网站的设计风格.本文列举了20个必看的jQuery的导航插件和教程,演示通过jQuery实现一些导航效果,教您如何做一个有创造性和易于使用的导航. 美丽滑出导航 在本教程中,展示了如何创建一个惊人的滑出式菜单或导航.这给出了一个漂亮的效果,使用这种技术可以节省您在网站上一些空间. Search Box with Filte

jQuery之动画效果show()......animate()

jQuery之动画效果 1.show()显示效果 语法:show(speed,callback) Number/String,Function speend为动画执行时间,单位为毫秒.也可以为slow","normal","fast" callback可选,为当动画完成时执行的函数.   show(speed,[easing],callback) Number/String easing默认是swing,可选linear; $("#div1&qu

jquery的动画效果

序言:昨天复习了jQuery的一些事件,今天我打算继续来复习jQuery的动画效果. 用于写一些网页特效:渐变菜单,渐变显示,图片轮播等. 首先当然得引入插件:<script src="jquery/jquery-1.11.1.js"></script> 1.简单的HTML代码 <input type="button" value="show" id="btn1"/><input ty

jQuery自定义动画

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>jQuery自定义动画</title> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <script

如何防止jQuery对象动画重复执行

如何防止jQuery对象动画重复执行:很多朋友可能会遇到这样的时候,如果有一个mouseover事件触发的动画效果,如果鼠标连续移入的话,可能会导致动画被多次执行,这种情况很可能是我们不想要的下过,下面就介绍一下如何防止此种现象的发生.代码如下: if(!$(".content").is(":animated")){ //code } 上面的代码就是判断指定元素是否处于动画之中,如果没有处于动画之中,则执行响应操作.相关阅读:1.is()函数可以参阅jQuery的i

jQuery队列动画

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>jQuery队列动画</title> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <script

jQuery中动画animate(下)

jQuery中动画animate(下) animate在执行动画中,如果需要观察动画的一些执行情况,或者在动画进行中的某一时刻进行一些其他处理,我们可以通过animate提供的第二种设置语法,传递一个对象参数,可以拿到动画执行状态一些通知 .animate( properties, options ) options参数 duration - 设置动画执行的时间 easing - 规定要使用的 easing 函数,过渡使用哪种缓动函数 step:规定每个动画的每一步完成之后要执行的函数 prog

jQuery animate()动画效果

1.jQuery动画效果 jQuery animate()方法用于创建自定义动画 $(selector).animate({params},speed,callback); //必需的 params 参数定义形成动画的 CSS 属性: //可选的 speed 参数规定效果的时长,它可以取以下值:"slow"."fast" 或毫秒: //可选的 callback 参数是动画完成后所执行的函数名称: 下面为几个实例: $("button").clic

jQuery基本动画效果

jQuery基本动画效果 1.show() 用于显示页面元素与之相对应的hide() 测试案例: <p title="标题">测试</p> <ul style="display: none"> <li title='苹果'>苹果</li> <li title='橘子'>橘子</li> <li title='菠萝'>菠萝</li> </ul> 点击显