这个想法是,当我点击按钮时,滚动应该在我点击的方向移动,而按钮是按下的。它在第一次尝试时工作,但突然停止工作。
export default function initCarousel() {
const carousel = document.querySelector("[data-carousel='scroll']");
const rightBtn = document.querySelector("[data-carousel='right']");
const leftBtn = document.querySelector("[data-carousel='left']");
let timer;
leftBtn.addEventListener("mousedown", () => {
timer = setInterval(() => {
carousel.scrollLeft -= 50;
}, 20);
});
rightBtn.addEventListener("mousedown", () => {
timer = setInterval(() => {
carousel.scrollLeft += 50;
}, 20);
});
leftBtn.addEventListener("mouseup", () => {
if (timer) clearInterval(timer);
});
rightBtn.addEventListener("mouseup", () => {
if (timer) clearInterval(timer);
});
}
字符串
1条答案
按热度按时间ogq8wdun1#
您的代码看起来正确处理鼠标按下事件时按钮的水平滚动。然而,它可能由于各种原因而停止工作。下面是一些需要研究和思考的项目:
字符串