[英]Javascript mouse wheel event stop
有沒有辦法在調用后停止鼠標滾輪事件以停止觸發? 我正在嘗試使用此邏輯在頁面之間切換(一次一頁/就像每個滾動一頁但滾動應該發生在頂部 500 毫秒),但是即使我刪除了偵聽器,事件也會繼續調用我的方法:
const listenToWheel = (event) => {
console.log("SCROLL");
removeScrollEventListener();
console.log("DO STUFF");
if (event.deltaY < 0) {
getPreviousPage();
} else if (event.deltaY > 0) {
getNextPage();
}
setTimeout(() => {
addScrollEventListener();
}, 800);
};
const addScrollEventListener = () => {
window.addEventListener("wheel", listenToWheel);
};
const removeScrollEventListener = () => {
window.removeEventListener("wheel", listenToWheel);
};
嘗試像這樣編寫最后兩個塊:
const addScrollEventListener = () => {
window.addEventListener("mousewheel", listenToWheel);
};
const removeScrollEventListener = () => {
window.removeEventListener("mousewheel", listenToWheel);
};
因為某些瀏覽器更喜歡鼠標滾輪事件而不是滾輪。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.