Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 滚动时如何更改背景色?_Javascript_Reactjs_Bootstrap 4 - Fatal编程技术网

Javascript 滚动时如何更改背景色?

Javascript 滚动时如何更改背景色?,javascript,reactjs,bootstrap-4,Javascript,Reactjs,Bootstrap 4,我已经创建了一个固定导航栏。现在我正在尝试更改导航栏的背景色。我已经创建了一个固定的菜单,当在页面末尾向下滚动时,它会改变颜色 import React, { Component } from 'react'; import { Collapse, Container, Navbar, NavbarBrand, NavbarToggler, NavItem, NavLink } from 'reactstrap'; import { Link } from 'react-router-dom';

我已经创建了一个固定导航栏。现在我正在尝试更改导航栏的背景色。我已经创建了一个固定的菜单,当在页面末尾向下滚动时,它会改变颜色

import React, { Component } from 'react';
import { Collapse, Container, Navbar, NavbarBrand, NavbarToggler, NavItem, NavLink } from 'reactstrap';
import { Link } from 'react-router-dom';
import { LoginMenu } from './api-authorization/LoginMenu';
import mainImage from './logoblue.png';

export class NavMenu extends Component {
    static displayName = NavMenu.name;

    constructor(props) {
        super(props);

        this.toggleNavbar = this.toggleNavbar.bind(this);
        this.state = {
            collapsed: true
        };
    }

    toggleNavbar() {
        this.setState({
            collapsed: !this.state.collapsed
        });
    }

    render() {
        return (
            <header>
                <Navbar className="navbar-expand-sm navbar-toggleable-sm fixed-top ng-white border-bottom box-shadow bg-white" light>
                    <Container>
                        <NavbarBrand tag={Link} to="/">
                            <img src={mainImage} style={{ height: '55px' }} alt="Logo" />
                        </NavbarBrand>
                        <NavbarToggler onClick={this.toggleNavbar} className="mr-2" />
                        <Collapse className="d-sm-inline-flex flex-sm-row-reverse" isOpen={!this.state.collapsed} navbar>
                            <ul className="navbar-nav flex-grow">

                                <LoginMenu>
                                </LoginMenu>
                            </ul>
                        </Collapse>
                    </Container>
                </Navbar>
            </header>
        );
    }
}
import React,{Component}来自'React';
从“reactstrap”导入{Collapse,Container,Navbar,NavbarBrand,NavbarToggler,NavItem,NavLink};
从'react router dom'导入{Link};
从“/api authorization/LoginMenu”导入{LoginMenu};
从“./logoblue.png”导入主图像;
导出类导航菜单扩展组件{
静态显示名称=NavMenu.name;
建造师(道具){
超级(道具);
this.toggleNavbar=this.toggleNavbar.bind(this);
此.state={
真的吗
};
}
toggleNavbar(){
这是我的国家({
折叠:!this.state.collapsed
});
}
render(){
返回(
); } }
首先从此行中删除
bg white

 <Navbar className="navbar-expand-sm navbar-toggleable-sm fixed-top ng-white border-bottom box-shadow bg-white" light>

示例输出:

首先从此行中删除
bg white

 <Navbar className="navbar-expand-sm navbar-toggleable-sm fixed-top ng-white border-bottom box-shadow bg-white" light>

示例输出:

我已经为您创建了一个演示。希望能有帮助

类应用程序扩展了React.Component{
状态={className:”“};
componentDidMount(){
window.addEventListener(“滚动”,this.handleScroll);
}
handleScroll=()=>{
如果(window.pageYOffset>0){
如果(!this.state.className){
this.setState({className:“blue”});
}
}否则{
if(this.state.className){
this.setState({className:});
}
}
}
render(){
返回(
this.ref=r}className={this.state.className}>头
与流行的观点相反,Lorem Ipsum并不是简单的随机文本。它起源于公元前45年的一段古典拉丁文学,距今已有2000多年的历史。弗吉尼亚州汉普顿悉尼学院的拉丁语教授理查德·麦克林托克从Lorem Ipsum的一段文章中查到了一个更为晦涩的拉丁语单词,即Concertetur,并通过e引用古典文学中的这个词,发现了无可置疑的来源。Lorem Ipsum来自西塞罗于公元前45年写的《德菲尼布斯·博诺勒姆和马洛勒姆》(善与恶的极端)的第1.10.32节和第1.10.33节。这本书是一篇关于伦理理论的论文,在文艺复兴时期非常流行。Lorem Ipsum的第一行,“Lorem ipsum dolor sit amet..”来自第1.10.32节中的一行。
自15世纪以来使用的Lorem Ipsum的标准块复制如下,供感兴趣的人使用。西塞罗的《de Finibus Bonorum et Malorum》中的第1.10.32节和第1.10.33节也以其精确的原始形式复制,并附有H.Rackham 1914年翻译的英文版本。
与流行的观点相反,Lorem Ipsum并不是简单的随机文本。它起源于公元前45年的一段古典拉丁文学,距今已有2000多年的历史。弗吉尼亚州汉普顿悉尼学院的拉丁语教授理查德·麦克林托克从Lorem Ipsum的一段文章中查到了一个更为晦涩的拉丁语单词,即Concertetur,并通过e引用古典文学中的这个词,发现了无可置疑的来源。Lorem Ipsum来自西塞罗于公元前45年写的《德菲尼布斯·博诺勒姆和马洛勒姆》(善与恶的极端)的第1.10.32节和第1.10.33节。这本书是一篇关于伦理理论的论文,在文艺复兴时期非常流行。Lorem Ipsum的第一行Lorem ipsum dolor sit amet..”来自第1.10.32节中的一行。
自15世纪以来使用的Lorem Ipsum的标准块复制如下,供感兴趣的人使用。西塞罗的《de Finibus Bonorum et Malorum》中的第1.10.32节和第1.10.33节也以其精确的原始形式复制,并附有H.Rackham 1914年翻译的英文版本。
与流行的观点相反,Lorem Ipsum并不是简单的随机文本。它起源于公元前45年的一段古典拉丁文学,距今已有2000多年的历史。弗吉尼亚州汉普顿悉尼学院的拉丁语教授理查德·麦克林托克从Lorem Ipsum的一段文章中查到了一个更为晦涩的拉丁语单词,即Concertetur,并通过e引用古典文学中的这个词,发现了无可置疑的来源。Lorem Ipsum来自西塞罗于公元前45年写的《德菲尼布斯·博诺勒姆和马洛勒姆》(善与恶的极端)的第1.10.32节和第1.10.33节。这本书是一篇关于伦理理论的论文,在文艺复兴时期非常流行。Lorem Ipsum的第一行Lorem ipsum dolor sit amet..”来自第1.10.32节中的一行。
自15世纪以来使用的Lorem Ipsum的标准块复制如下,供感兴趣的人使用。西塞罗的《de Finibus Bonorum et Malorum》中的第1.10.32节和第1.10.33节也以其精确的原始形式复制,并附有H.Rackham 1914年翻译的英文版本。
与流行的观点相反,Lorem Ipsum并不是简单的随机文本。它起源于公元前45年的一段古典拉丁文学,距今已有2000多年的历史。弗吉尼亚州汉普顿悉尼学院的拉丁语教授理查德·麦克林托克从Lorem Ipsum的一段文章中查到了一个更为晦涩的拉丁语单词,即Concertetur,并通过e引用古典文学中的这个词,发现了无可置疑的来源。Lorem Ipsum来自西塞罗于公元前45年写的《德菲尼布斯·博诺勒姆和马洛勒姆》(善与恶的极端)的第1.10.32节和第1.10.33节。这本书是一篇关于伦理理论的论文,在文艺复兴时期非常流行。Lorem Ipsum的第一行洛勒姆
bg-primary
bg-light
bg-success
bg-info
bg-warning
bg-danger
bg-dark