Есть набор ссылок с якорями к соотв блокам.
При скролле пробегаетесь по набору блоков и смотрите, приблизительно такое условие
if(block.offset() < win.scrollTop() + win.height())
для каждого блока, верхняя граница которого находиться НАД нижней частью экрана будет true
Соотв вам надо выбрать самый нижний из них :)
Через блок выйти на ссылку и присвоить ей все что вам надо