根据滚动条位置更改导航栏颜色

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据滚动条位置更改导航栏颜色相关的知识,希望对你有一定的参考价值。

我试图根据当前的滚动条位置替换导航栏颜色,例如,如果滚动条位于页面顶部,我希望颜色是透明的,我希望它是红色的。

这是我当前的代码,目前正在做的是,一旦用户滚动一点,导航栏将颜色更改为红色,但当用户再次一直到顶部时,该背景颜色仍然存在。

    componentDidMount() 
        window.addEventListener("scroll", this.listenScroll);
    

    listenScroll = () => 
        if(document.body.scrollTop) 
            this.setState( changeColor: "transparent" );
         else 
            this.setState( changeColor: "red" );
        
    

换句话说,当用户滚动条位于顶部时,将导航栏的颜色更改为透明,否则,将其更改为红色。

答案

我会从qazxsw poi中获取滚动元素,并将其传递到你的qazxsw poi函数中。

event

这里的工作示例:listenScroll

以上是关于根据滚动条位置更改导航栏颜色的主要内容,如果未能解决你的问题,请参考以下文章

Bootstrap滚动监听

scrollTop总为零原因;如何查看滚动条的位置或者说滚动条的滚动距离(待完善)

SwiftUI:如何根据滚动视图的用户当前滚动位置同步/更改进度条进度?

2017-04-10js来控制导航栏在滚动条拉到一定位置时显示

tab导航栏横向滚动条-tabScroll

滚动后更改导航栏颜色?