javascript - 让 JS EventListener 持续运行

标签 javascript html css

几天前,这里有人为我提供了一个脚本解决方案,该脚本可以在滚动时更改 div 的颜色。

这是我使用的代码:

    const x = document.getElementById("menuID");
window.addEventListener("scroll", () => {
    if(window.pageYOffset >= 105 && window.pageYOffset < 775){
        x.classList.add("color1");
    } else {
        x.classList.add("color2");
    }
});

它可以工作,但我希望它在页面加载后继续运行,因此它可以更改为“color.2”。这可能吗?

最佳答案

在您的文档上再添加一个事件监听器,并从那里运行相同的回调:

const x = document.getElementById("menuID");
function callback(){
    if(window.pageYOffset >= 105 && window.pageYOffset < 775){
        x.classList.add("color1");
    } else {
        x.classList.add("color2");
    }
}

window.addEventListener("scroll",callback);
window.addEventListener("load",callback);

关于javascript - 让 JS EventListener 持续运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55729174/

相关文章:

javascript - pageinit 上的面板高度尺寸计算

css - 如何停止滚动比窗口高度长的div?

javascript - 如何转换来自 http.post 响应 json 的数据以便我可以在我的应用程序中使用它?

javascript - 在 Titanium Appcelerator 中创建元素并使用 Loop 添加事件监听器

javascript - JQuery 在后台加载页面

javascript - 'production' 代码中不推荐使用 jQuery .css

javascript - 如何使用 Bootstrap 显示另一个导航栏而不是下拉菜单

javascript - Object.keys(obj).length 返回字符总和而不是记录总数

javascript - html:悬停表格列

javascript - 我需要根据 html 表单提交的响应进行重定向