Я использую setInterval для создания самодельного слайд-шоу, которое запускается при вводе мыши, используя этот учебник: https://www.amideveloper.com/how-to-start-slideshow-on-hover-image-in-jquery/
Он отлично работает, но я бы хотел, чтобы слайд-шоу останавливалось при выходе из мыши с помощью clearInterval.
Я не знаю, что я делаю неправильно, мой интервал не очищается, и слайд-шоу не останавливается...
вот мой код:
JQUERY
$(".fadeInOut > div:gt(0)").hide();
function change_div() {
$(".fadeInOut > div:first").fadeOut(0).next().fadeIn(0).end().appendTo(".fadeInOut");
}
$(".fadeInOut").mouseenter(function(){
myVar = setInterval(change_div, 600);
change_div();
});
$(".fadeInOut").mouseleave(function(){
clearInterval(myVar);
});
HTML
<div class="fadeInOut">
<div><img src="https://www.amideveloper.com/wp-content/themes/amideveloper/slide/slider-1.jpg"></div>
<div><img src="https://www.amideveloper.com/wp-content/themes/amideveloper/slide/slider-2.jpg"></div>
<div><img src="https://www.amideveloper.com/wp-content/themes/amideveloper/slide/slider-3.jpg"></div>
</div>
CSS
.fadeInOut > div {
position: absolute;
}
вот ссылка на jsfidlle:
https://jsfiddle.net/0ysg3r67/
любая помощь будет оценена
myVar
в нужной области, а не неявно делать его глобальным. - person Rory McCrossan   schedule 17.02.2020