最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

jQuery实现级联菜单效果(仿淘宝首页菜单动画)_jquery

来源:动视网 责编:小OO 时间:2020-11-27 21:21:47
文档

jQuery实现级联菜单效果(仿淘宝首页菜单动画)_jquery

那么要实现这个效果我们当然要使用到的是jQuery,那么我就开始讲解怎么做的了,先上html和css的代码代码如下: menu.html。 。
推荐度:
导读那么要实现这个效果我们当然要使用到的是jQuery,那么我就开始讲解怎么做的了,先上html和css的代码代码如下: menu.html。 。


相信初学HTM+DIV+CSSl的同学们肯定也想做出淘宝网首页的菜单动画吧。今天我们就带大家体会一下级联菜单的显示。小编我只是实现了简单地效果,不过总体来说原理是一样的哦,那么先让大家看看效果图吧。

那么要实现这个效果我们当然要使用到的是jQuery,那么我就开始讲解怎么做的了,先上html和css的代码
代码如下:



menu.html







  • 笔记本

  • 笔记本1

  • 笔记本1

  • 笔记本1

  • 笔记本1


  • 移动硬盘

  • 移动硬盘1

  • 移动硬盘1

  • 移动硬盘1

  • 移动硬盘1


  • 电脑软件

  • 电脑软件1

  • 电脑软件1

  • 电脑软件1

  • 电脑软件1


  • 数码产品

  • 数码产品1

  • 数码产品1

  • 数码产品1

  • 数码产品1







  • menu.css
    代码如下:
    @CHARSET "UTF-8";

    *{
    margin: 0px;
    padding: 0px;

    }

    ul,li{
    list-style-type: none;

    }

    .menu{
    width: 190px;
    border: 1px red solid;
    background-color: #fffdd2;
    }

    .optn{
    width: 190px;
    line-height: 28px;
    border-top: 1px red dashed;

    }


    .content{
    padding-top:10px;
    clear: left;
    }


    a{
    text-decoration: none;
    color: #666;
    padding: 10px;
    }
    .optnFocus{
    background-color: #fff;
    font-weight: bold;

    }

    div{
    padding: 10px;
    }

    .tip{
    width: 190px;
    border: 2px red solid;
    position: absolute;
    background-color: #fff;
    display: none;
    }

    .tip li{
    line-height: 23px;
    }

    接下来就是主要的jquery代码:menu.js
    代码如下:
    $(function(){

    var curY;//获取所选想的TOP
    var curH;//获取所选的Height
    var curW;//获取所选的width
    var objL;//获取当前对象

    //自定义函数用于获取当前位置
    function setInitValue(obj){
    curY=obj.offset().top;
    curH=obj.height();
    curW=obj.width();
    }

    //设置当前所选项的鼠标滑动事件
    $(".optn").mouseover(function(){
    objL=$(this);//获取当前对象
    setInitValue(objL);
    var allY=curY-curH +"px";

    objL.addClass("optnFocus");
    //获取气元素下的下一个ul
    $(".tip",this).show().css({"top":allY,"left":curW});;

    });
    $(".optn").mouseout(function(){

    $(this).removeClass("optnFocus");
    $(".tip",this).hide();

    });

    //为了防止移到子菜单时子菜单不见,我们也要为子菜单设置鼠标事件

    $(".tip").mouseover(function(){

    $(this).show();
    objL=$(this).prev("li");
    setInitValue(objL);
    objL.addClass("optnFocus");
    });

    $(".tip").mouseout(function(){
    $(this).hide();
    $(this).prev("li").removeClass("optnFocus");

    });
    });

    注意要点:

    1.由于我们用的是较高版本的jquery文件库,所以有些方法是不支持的,例如获取下一个元素的第一个子元素next(erp),在10.1中是不支持的,所以我换了一种方法$(chiled,select),表示在select的范围进行元素的选择

    2.整个效果的实现我们还要为子选项框绑定鼠标事件,目的就是为了不在我们移动到子选项卡中,突然消失。

    要实现好看的效果就需要加一些图片和样式,不过原理是一样的哦

    文档

    jQuery实现级联菜单效果(仿淘宝首页菜单动画)_jquery

    那么要实现这个效果我们当然要使用到的是jQuery,那么我就开始讲解怎么做的了,先上html和css的代码代码如下: menu.html。 。
    推荐度:
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top