使JS EventListener持续运行

时间:2019-04-17 13:53:51

标签: 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”。这可能吗?

1 个答案:

答案 0 :(得分:1)

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

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);