<div id="sidebar">
<a id="f11" href="javascript:void();" class="hover"><em>1F</em><span>导航项目</span></a>
<a id="f22" href="javascript:void();"><em>2F</em><span>导航项目</span></a>
<a id="f33" href="javascript:void();"><em>2F</em><span>导航项目</span></a>
</div>
<script>
$(function(){ $(window).scroll(function(){ //为页面添加页面滚动监听事件 var wst = $(window).scrollTop()+300; //滚动条距离顶端值 for (i=1; i<8; i++){ //加循环 if($("#f"+i).offset().top<=wst){ //判断滚动条位置 $('#sidebar a').removeClass("hover"); //清除c类 $("#f"+i+i).addClass("hover"); //给当前导航加c类 } } }); $("#sidebar a").click(function(){ $("#sidebar a").removeClass("hover"); $(this).addClass("hover"); var newid=$(this).attr("id"); newid=newid.substring(0,2); var newtop=$("#"+newid).offset().top; $("html,body").animate({scrollTop:newtop},800); }); var WindowHeight = $(window).height(); $(window).scroll(function(){ var _ScrollTop = $(window).scrollTop(); if(_ScrollTop > WindowHeight-100){ $("#sidebar").css({visibility:"visible"}); }else{ $("#sidebar").css({visibility:"hidden"}); } }); });
</script>
方法二:
//右侧导航
$('.rightNav_item').click(function() {
var rightNav_target = 'rightNav_target' + $(this).index();
// $(this).addClass('current').siblings().removeClass('current');
$('html,body').animate({
scrollTop: $('#' + rightNav_target).offset().top
}, 400);
});
$(window).scroll(function() {
var top = $(document).scrollTop(); //定义变量,获取滚动条的高度
var menu = $("#menu"); //定义变量,抓取#menu
var items = $(".rowItem"); //定义变量,查找.item
var curId = ""; //定义变量,当前所在的楼层item #id
items.each(function() {
var m = $(this); //定义变量,获取当前类
var mIndex = $(this).index();
var itemsTop = m.offset().top; //定义变量,获取当前类的top偏移量
if(top >= itemsTop - 100) {
curId = "#" + m.attr("id");
} else {
return false;
};
});
//给相应的楼层设置cur,取消其他楼层的cur
var curLink = menu.find(".current");
if(curId && curLink.attr("href") != curId) {
curLink.removeClass("current");
menu.find("[href=" + curId + "]").addClass("current");
};
});