Навесить обработчик на событие onscroll и смотреть, насколько прокрутилась страница от начала. Т.е. будет что-то вроде такого:
jQuery('body').on('scroll',function (e) {
if (jQuery('body').scrollTop()>500) { // вместо 500 поставить отступ среднего блока от верха страницы
jQuery('.midblock').addClass('fixedblock');
}
else {
jQuery('.midblock').removeClass('fixedblock');
}
});
Тут предполагается, что у среднего блока постоянно прописан класс midblock, а когда он переходит в состояние fixed, то добавляется класс fixedblock, в котором прописаны position:fixed и отступ сверху.