问答详情
源自:4-3 使用jQuery实现网页定位导航(下)

点击右侧导航条能正确显示结果,但当滑动时右侧导航条无任何效果,滑到在第一个图层时右侧导航条会全部显示背景色

<script type="text/javascript">

$(document).ready(function(){

//滚动条滚动时

$(window).scroll(function(){

var top=$(document).scrollTop();

var menu=$(".menu");

                  // console.log(top);

                  var items=$("#content").find(".item")

                  var currentId="";    //当前所在楼层的id;

                   items.each(function(){

                    var m=$(this);

                    var itemTop=m.offset().top;

                    if (top>itemTop-200) {

                    currentId="#"+m.attr("id");

                    } else{

                    return false;

                    }

           

                   });

                 //给相应的楼层a 设置current,取消其他链接的current

                  var currentLink=menu.find(".current");

                  if(currentId&&currentLink.attr("href") !=currentId)

                  {

                  currentLink.removeClass("current");

                    menu.find("[href="+currentId+"]").addClass("current");

                  }

                    

                });

});


提问者:慕圣8800280 2016-10-20 13:17

个回答

  • 慕容8510444
    2016-12-12 10:24:14

    上全部代码 估计问题已解决来了吧 

  • 慕圣8800280
    2016-10-20 17:54:33

    改成id也没用,导航条滑动时菜单都没响应

  • 慕圣8800280
    2016-10-20 17:51:26

    我给菜单添加的是class类,感觉用.menu也没错

  • 就这样简简单单
    2016-10-20 14:08:54

    var menu=$("#menu");这个应该是#menu,你写成了.menu,改过来就好了。