Здравствуйте!
Я делаю скроллер для картинок и столкнулся с проблемой...
Есть html структура:
<div class='background_block'>
<div class='background_item'></div>
<div class='background_item'></div>
<div class='background_item'></div>
<div class='background_item'></div>
</div>
Необходимо по событию mousewheel прокручивать блоки background_item, так чтобы при выходе за верхнюю грницу скроллинг переходил на следующий блок background_item
Есть вариант события:
count = $('.background_item').length - 1;
var scroll = 0;
function backScroller (event) {
scroll += event.originalEvent.wheelDelta;
$('.background_item').eq(count).css('margin-top', scroll);
if ($('.background_item').eq(count).offset().top + $('.background_item').eq(count).height() <= 0) {
if (count != 0) {
scroll = 0;
count--;
}
else {
count = 0;
scroll = 0;
}
}
else if ($('.background_item').eq(count).offset().top >= 0) {
scroll = - $('.background_item').eq(count).height();
count++;
}
}
Я никак не могу решить проблему с остановкой выполнения mousewheel при достижении граничных значений count.
Так же необходимо при остановке скролла в промежутке между сменой background_item выполнить другой обработчик. То есть необходимо отслеживать происходит в данный момент скроллинг или нет.
Спасибо!