我正在尝试使用 native javascript,因此没有加载 jquery。我想做一个 if 语句来删除 body 元素中的一个类,只有当它有一个类时。这样我就可以避免每次滚动时都触发它。我基本上希望它仅在窗口滚动并且正文应用了此类时才删除该类,否则不应触发。
我试过这段代码,它确实删除了类,但它总是在滚动时触发,无论 body 是否有类应用。在这种情况下......我在控制台上看到 scrollEvent 打印了我在页面上所做的每个滚动。你是如何完成这项工作的?
if(document.body.classList){
window.addEventListener('scroll', function(){
console.log('scrollEvent');
document.body.classList.remove('mobile-menu-open');
});
}
最佳答案
你的 if 需要检查那个类
window.addEventListener('scroll', function(){
console.log('scrollEvent');
// do the following only if it has the class
if( document.body.classList.contains('mobile-menu-open') ) {
document.body.classList.remove('mobile-menu-open');
}
});
关于javascript - 如果 body 有一个类在滚动原生 javascript 上删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22669448/