Я работаю с готовым эффектом библиотеки javascript, который клиент запросил под названием Velo Slider (демонстрационная страница здесь https://codepen.io/StephenScaff/pen/dWmJxj). Для целей проекта мне нужно добавить контент ниже полных слайдов, но библиотека блокирует вашу прокрутку только для слайдов, поэтому все, что находится под ними, недоступно. Я удалил фрагмент кода, который управляет прокруткой прокрутки, но затем вы не можете прокручивать слайды с помощью мыши, что означает, что их легко пропустить.
Я пытался найти решение для отключения прокруткинажимая на последний слайд с помощью кнопки «Продолжить к содержанию», не удаляя код напрямую, но это не в моей глубине, и я не мог придумать, как найти сокращенный пример для обратного инжиниринга метода. Вот фрагмент кода для прокрутки (полный код можно увидеть по ссылке на кодовое перо выше):
/**
* Init Scroll Jaclk
*/
initScrollJack: function() {
var visibleSlide = settings.veloSlide.filter('.is-active'),
topSection = visibleSlide.prevAll(settings.veloSlide),
bottomSection = visibleSlide.nextAll(settings.veloSlide),
animationParams = VeloSlider.setAnimation(false),
animationVisible = animationParams[0],
animationTop = animationParams[1],
animationBottom = animationParams[2];
console.log(animationParams);
console.log(animationParams[4]);
visibleSlide.children('div').velocity(animationVisible, 1, function() {
visibleSlide.css('opacity', 1);
topSection.css('opacity', 1);
bottomSection.css('opacity', 1);
});
topSection.children('div').velocity(animationTop, 0);
bottomSection.children('div').velocity(animationBottom, 0);
},
/**
* Scroll Jack
* On Mouse Scroll
*/
scrollJacking: function(e) {
if (e.originalEvent.detail < 0 || e.originalEvent.wheelDelta > 0) {
delta--;
(Math.abs(delta) >= settings.scrollThreshold) && VeloSlider.prevSlide();
} else {
delta++;
(delta >= settings.scrollThreshold) && VeloSlider.nextSlide();
}
return false;
}
Любое понимание приветствуется, спасибо.