我已經添加了一個變量endpoint
,它被設置爲最終div的偏移量加上divs的高度,當頁面滾動超過此範圍時menutext2
類被刪除。
$(function(){
var offsets = [],
menuText = $('#menu .menuText'),
endpoint;
$("div.contentDiv").each(function(i, div) {
if(i==$("div.contentDiv").length-1){endpoint=$(div).offset().top+$(div).outerHeight();}
offsets.push({ id: div.id, offset: $(div).offset().top - 60});
});
$(window).scroll(function(e) {
var start = $(this).scrollTop();
var end = $(this).scrollTop();
for (var div = 0; div < offsets.length; div++) {
if (start > offsets[div].offset) {
menuText.removeClass('menutext2').addClass('menutext');
menuText.filter('[linkId="'+offsets[div].id+'"]').addClass('menutext2').removeClass('menutext');
}
}
if (start === 0 || $(this).scrollTop()>endpoint) {
menuText.removeClass('menutext2').addClass('menutext');
}
});
});