JQ滑动导航菜单的实现

前言:不多说直接看效果!!!

这样的菜单我们在一般的网站上见到的也比较多,有比较好的用户体验!

原理:这个很重要,任何的特效只要原理搞明白了,实现起来都是很容易的!这个特效的原理很简单,菜单的样式我们都很容易实现就是一些CSS而已!

中间那个滑块其实就是一个定位为:absolute 的元素,每当鼠标放到一个A元素上的时候用JQ获取到当前A元素的位置和宽度,再用JQ的animate方法,以动画的形式给元素即可!

当然你在这里也可以也一些其它的动画


1、DOM结构

 

<div class="nav-wrapper">
        <div class="container">
            <ul id="nav-list">
                <li class="nav-item"><a href="http://www.lanrentuku.com/" class="active" target="_blank">网站首页</a></li>
                <li class="nav-item"><a href="http://www.lanrentuku.com/" target="_blank">网上商城</a></li>
                <li class="nav-item"><a href="http://www.lanrentuku.com/" target="_blank">智能管家</a></li>
                <li class="nav-item"><a href="http://www.lanrentuku.com/" target="_blank">技术支持</a></li>
                <li class="nav-item"><a href="http://www.lanrentuku.com/" target="_blank">应用案例</a></li>
                <li class="nav-item"><a href="http://www.lanrentuku.com/" target="_blank">关于我们</a></li>
                <li class="nav-item"><a href="http://www.lanrentuku.com/" target="_blank">懒人图库</a></li>
            </ul>
            <div class="animate-block"></div>
        </div>
    </div>

  

2、对应的CSS

       

 1 *{margin: 0;padding: 0;}
 2         body{ font-family:"Microsoft YaHei";}
 3         .container {
 4             width: 1200px;
 5             margin: 30px auto;
 6             position: relative;
 7         }
 8         li {
 9             list-style: none;
10         }
11         .nav-wrapper {
12             background-color: #0191d7;
13             height: 50px;
14         }
15         #nav-list {
16             position: relative;
17             z-index: 1;
18         }
19         #nav-list .nav-item {
20             float:left;
21             height: 50px;
22         }
23         #nav-list li a{
24             display: block;
25             padding: 0 50px;
26             height: 50px;
27             font-size: 16px;
28             line-height: 50px;
29             color: #fff;
30             text-decoration: none;
31         }
32         .animate-block {
33             position: absolute;
34             height: 50px;
35             background-color: #2B6B8A;
36             left: 0;
37             top:0;
38             z-index: 0;
39         }
40         .active {
41             box-shadow: 0 0 2px rgba(0,0,0,.1);
42         }

3、JQ代码

 

$(function () {
        var $active = $(".active"); //当前选中的菜单
        var $active_w = $active.innerWidth();
        var $active_l = $active.position().left;
        var $animate_block = $(".animate-block");

        //设置滑块初始位置
        $(".animate-block").css({width:$active_w,left:$active_l});

        //a事件
        $("#nav-list>li").hover(function () {
            var index = $(this).index();
            var $a_cur = $("#nav-list a").eq(index);//得到当前元素
            var width = $a_cur.innerWidth();
            var left = $a_cur.position().left;
            $(".animate-block").stop().animate({width:width,left:left});
        },function () {
            $(".animate-block").stop().animate({width:$active_w,left:$active_l});
        });
    });

 

参考资料:

脚本之家:http://www.jb51.net/article/36302.htm

站长之家:http://sc.chinaz.com/jiaoben/141223079100.htm

时间: 2024-10-13 13:16:04

JQ滑动导航菜单的实现的相关文章

jQuery滑动导航菜单

<!DOCTYPE HTML> <html> <head> <meta charset="UTF-8" /> <meta name="author" content="abangsir" /> <title>jQuery弹性滑动导航菜单</title> <style type="text/css"> body{ font-famil

Android 滑动导航菜单的快速构建(二) Material Design

原创文章,转载请注明 ( 来自:http://blog.csdn.net/leejizhou/article/details/52046748 李济洲的博客 ) 上一篇 http://blog.csdn.net/leejizhou/article/details/52013343 介绍了几个滑动导航菜单效果的快速构建,这篇文章来总结"当下"如何按照Android的设计标准去设计滑动导航菜单,我为什么说的"当下"呢?因为这个设计标准是会变的. 在material de

使用 jQuery 和 CSS3 制作滑动导航菜单

这个下拉菜单可以让你的网站非常优雅,滑动框导航效果令人印象深刻.此外,子菜单框也可以与此集成起来以使其更具吸引力.导航是网站成功的关键之一,有吸引力的导航能够引导用户浏览网站中的更多内容. 效果演示      源码下载 您可能感兴趣的相关文章 网站开发中很有用的 jQuery 效果[附源码] 分享35个让人惊讶的 CSS3 动画效果演示 十分惊艳的8个 HTML5 & JavaScript 特效 Web 开发中很实用的10个效果[源码下载] 12款经典的白富美型 jQuery 图片轮播插件 本文

Android ViewPager滑动导航菜单

不占满整个页面的滑动菜单,也可以是自动滑动广告~ package view.example.viewpagerexample; import java.util.ArrayList; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; import android.os.Bundle; import android.os.Handler; import android.os.Message; impor

Android滑动导航菜单TabLayout+ViewPager+Fragment

1.主要的Activity--MemberDetailActivity 2.Activity视图的xml文件--R.layout.activity_member_detail 3.自定义的Fragment子类--CustomTrainingFragment 4.Fragment视图的xml文件-- 5.自定义Fragment子类的适配器 //1.MemberDetailActivitypackage com.vimems.coach; import android.os.Bundle; impo

20款jquery下拉导航菜单特效代码分享

jquery仿京东商城左侧分类导航下拉菜单代码 jQuery企业网站下拉导航菜单代码 jQuery css3黑色的多级导航菜单下拉列表代码 jquery响应式导航菜单支持手机导航菜单代码 jquery鼠标导航下滑显示图片列表效果 jQuery个性动画二级下拉导航代码 jquery网站下拉菜单制作企业网站导航菜单代码 jQuery游戏网站顶部滑动导航菜单代码 jquery.superfish.js导航菜单插件制作网页无限级下拉菜单代码 jquery hover事件实用的企业网站二级导航菜单样式 j

通过css3实现的动画导航菜单代码

用css3样式实现的滑动导航菜单,html代码如下 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=

导航菜单滑动动画

用jquery实现百度新闻导航菜单滑动动画 前言 前两天,群里有人问百度新闻导航是如何实现的,当时由于忙于工作,没有来得及细看,恰好今天有空闲时间,索性就实现一下这个效果吧: 思路与步骤 1.利用UL创建简单横向导航: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&g

手风琴图片和钢琴导航栏JQ滑动特效

手风琴JQ滑动特效 1.效果预览: 2.相关代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="../jquery-1.9.1/jquery-1.9.1/jquery.js"></script> <