Навскидку, вариант на jQuery:
<div id="banner"></div> // кладем в конец страницы.
#banner {
z-index: 10; // корректируем по ситуации
position: fixed;
bottom: 0;
left: 0;
right: 0;
display: none; // скрываем по умолчанию
}
function BannerManager() {
var $banner = $('#banner');
var $viewport = $(window);
update(); // обновляем состояние баннера по инициализации
$viewport.on({
'scroll': update, // обновляем состояние баннера по скроллу
'resize': update // обновляем состояние баннера по изменению размера окна
})
// кроссбраузерно получаем высоту страницы
function getDocHeight() {
var D = document;
return Math.max(
D.body.scrollHeight, D.documentElement.scrollHeight,
D.body.offsetHeight, D.documentElement.offsetHeight,
D.body.clientHeight, D.documentElement.clientHeight
);
}
function update() {
if ($viewport.scrollTop() + $viewport.height() >= getDocHeight() / 2) {
$banner.css('display', 'block');
} else {
$banner.css('display', 'none');
}
}
}
new BannerManager();