Si está utilizando jQuery sólo tratar de comprobar la posición documento
$('html').position().top;
por ejemplo:
$(document).bind("scroll", checkLink);
function checkLink(){
/* Position will checked out after 1 sec when user finish scrolling */
var s = setTimeout(function(){
var docHeight = $('html').position().top;
var allLinks = $('.navigation a');
if (docHeight < 0 && docHeight <= -1000) {
allLinks.removeClass('active');
$('a.firstlink').addClass('active');
} else
if (docHeight < -1000 && docHeight <= -2000) {
allLinks.removeClass('active');
$('a.secondlink').addClass('active');
} else { /* .... */ }
$(document).bind("scroll", checkLink);
}, 1000);
$(document).unbind('scroll');
}
pero los chicos en su ejemplo que no han celebrado en esto durante mucho tiempo :) simplemente alternar clases en tecleo
$('#navigation').localScroll();
$('#navigation li a').click(function() {
$('#navigation li a').removeClass("active");
$(this).addClass("active");
});