#javascript #jquery
#javascript #jquery
Вопрос:
У меня есть скрипт, который создаст простой слайдер с кнопками для навигации.
Теперь мне нужно сделать этот слайдер управляемым с помощью прокрутки.
Когда пользователь прокручивает вниз, он переходит к следующему ползунку, также обратному.
Кнопки также будут доступны. Таким образом, будет 2 варианта того, как им управлять. С кнопками «Далее» и «назад», а также с прокруткой вниз или вверх.
Есть ли какой-либо вариант, как сделать это самым простым способом?
var lottieone = document.getElementById('lottieone');
var lottietwo = document.getElementById('lottietwo');
var lottiethree = document.getElementById('lottiethree');
var lottiefour = document.getElementById('lottiefour');
$('#lottieone').show();
$('#lottietwo').hide();
$('#lottiethree').hide();
$('#lottiefour').hide();
function missionsSlide() {
$('#lottieone').hide();
$('#lottietwo').show();
$('#lottiethree').hide();
$('#lottiefour').hide();
}
function missionsSlideBacc() {
$('#lottieone').hide();
$('#lottietwo').show();
$('#lottiethree').hide();
$('#lottiefour').hide();
}
function researchSlide() {
$('#lottieone').hide();
$('#lottietwo').hide();
$('#lottiethree').show();
$('#lottiefour').hide();
}
function educationSlide() {
$('#lottieone').hide();
$('#lottietwo').hide();
$('#lottiethree').hide();
$('#lottiefour').show();
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<section class="slider">
<div id="lottieone" class="lottieSlide">
<div class="content">
<button onclick="missionsSlide()">HOME</button>
</div>
</div>
<div id="lottietwo" class="lottieSlide mainSliders">
<div class="content">
<h1>MISSIONS</h1>
<button onclick="researchSlide()">Next</button>
</div>
</div>
<div id="lottiethree" class="lottieSlide mainSliders">
<div class="content">
<h1>RESEARCH</h1>
<button onclick="missionsSlideBacc()">Back</button>
<button onclick="educationSlide()">Next</button>
</div>
</div>
<div id="lottiefour" class="lottieSlide mainSliders">
<div class="content">
<h1>EDUCATION</h1>
<button onclick="researchSlide()">Back</button>
</div>
</div>
</section>
Ответ №1:
Попробуйте использовать этот фрагмент.
$(document).on('mousewheel', '.slider', function (e) {
var delta = e.originalEvent.wheelDelta;
if (delta > 0) alert("scrolled Up");
if (delta < 0) alert("scrolled Down");
e.preventDefault();
});
Это часто повторяющийся вопрос, поэтому вы также можете найти для него несколько решений