jQuery-菜单随滚条改为以定位方式

在淘宝购物的时候,发现里面有一个菜单,是查看“评论,物品信息”等的一个菜单。由于页面太长,所以它做了一个菜单定位。

自己试着写了下:

$(function(){    
    //获取要定位元素距离浏览器顶部的距离
    var navH = $(".nav").offset().top;
    //滚动条事件
    $(window).scroll(function(){
        //获取滚动条的滑动距离
        var scroH = $(this).scrollTop();
        //滚动条的滑动距离大于等于定位元素距离浏览器顶部的距离,就固定,反之就不固定
        if(scroH>=navH){
            $(".nav").css({"position":"fixed","top":0,"left":"50%","margin-left":"-200px"});
        }else if(scroH<navH){
            $(".nav").css({"position":"static","margin":"0 auto"});
        }
    })
})

 

主要思路

  1.当这个元素进入可视区域后,然后要离开可视区域的时候,就改变定位方式。

  2.当元素回离浏览器顶部最初高度时,再还原其定位方式l

 

DEMO下载

posted @ 2012-05-24 09:43  o0Luffy0o  阅读(627)  评论(1编辑  收藏  举报