Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.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 如何修复滚动显示div(React)_Javascript_Html_Css_Reactjs - Fatal编程技术网

Javascript 如何修复滚动显示div(React)

Javascript 如何修复滚动显示div(React),javascript,html,css,reactjs,Javascript,Html,Css,Reactjs,在我将一些div设置为在滚动后显示之后,结果是当页面打开(或重新加载)时,div没有隐藏 我已经试着去买了 -组件将安装,以及 -组件安装 对于生命周期,但我得到了相同的结果 这是密码 开国 制作函数 hideBar(){ 设{isHide}=this.state; window.scrollY

在我将一些div设置为在滚动后显示之后,结果是当页面打开(或重新加载)时,div没有隐藏

我已经试着去买了 -组件将安装,以及 -组件安装 对于生命周期,但我得到了相同的结果

这是密码

  • 开国
  • 制作函数
  • hideBar(){
    设{isHide}=this.state;
    window.scrollY<300&&this.prev?
    !isHide&&this.setState({isHide:true})
    :
    isHide&&this.setState({isHide:false})
    this.prev=window.scrollY;
    }
    组件willmount(){
    window.addEventListener('scroll',this.hideBar);
    }
    组件将卸载(){
    window.removeEventListener('scroll',this.hideBar);
    }
    
  • 调用函数
  • render(){
    让classHide=this.state.isHide?“隐藏”:
    返回(
    获取web技术的最新更新
    

    我撰写与web技术相关的文章,如设计趋势、开发工具、UI/UX案例研究和评论等。注册我的时事通讯,获取所有这些文章。

    算我一个! ); }

    谢谢你的帮助!,希望其他需要它的人觉得它有用。

    据我所知,当用户在页面中向下滚动时,您希望显示订阅新闻稿框。 你为什么不写下:

    
    hideBar() {
      this.setState({
        isHidden: window.scrollY < 300
      });
    }
    
    
    
    希德巴尔(){
    这是我的国家({
    isHidden:window.scrollY<300
    });
    }
    
    在开始时将
    ishiden
    设置为
    true
    ,应该可以解决您的问题。如果没有,则调用
    componentDidMount
    上的
    hideBar
    方法


    而且,我建议你在用户花一些时间查看网站后显示新闻通讯框;e、 g.在他/她阅读文章15秒后显示。

    据我所知,当用户在页面中向下滚动时,您希望显示订阅时事通讯框。 你为什么不写下:

    
    hideBar() {
      this.setState({
        isHidden: window.scrollY < 300
      });
    }
    
    
    
    希德巴尔(){
    这是我的国家({
    isHidden:window.scrollY<300
    });
    }
    
    在开始时将
    ishiden
    设置为
    true
    ,应该可以解决您的问题。如果没有,则调用
    componentDidMount
    上的
    hideBar
    方法


    而且,我建议你在用户花一些时间查看网站后显示新闻通讯框;e、 g.在他/她阅读文章15秒后显示它。

    假设问题是在重新加载时出现页面偏移,并且您的意图是显示div

    componentDidMount() {
      if(window.pageYOffset) this.setState({ isHide: false, });
    }
    

    假设问题是在重新加载期间存在页面偏移,并且您的意图是显示div

    componentDidMount() {
      if(window.pageYOffset) this.setState({ isHide: false, });
    }
    

    砰的一声,萨卡拉卡,这是金奥坎!不管怎样,我们怎么会在10分钟后才把它藏起来呢?谢谢只要使用定时器,
    setTimeout
    就可以了,记住打开
    component将卸载
    Boom sakalaka,,这是gold Orkhan!不管怎样,我们怎么会在10分钟后才把它藏起来呢?谢谢只需使用计时器,
    setTimeout
    就可以了,记住打开
    componentWillUnmount
    componentDidMount() {
      if(window.pageYOffset) this.setState({ isHide: false, });
    }