我有一個導航組件,它具有隱藏的導航項,直到您滾動到視口中的某個點。isTop尋找頁面上的位置,一旦到達導航項目就會淡入。在手機或平板電腦菜單上,我希望它們始終可見。有沒有一種方法可以檢測用戶是否在較小的屏幕上,如果是,您可以禁用事件偵聽器?片段:componentDidMount() { this.updateWindowDimensions(); window.addEventListener('resize', this.updateWindowDimensions); document.addEventListener('scroll', () => { const isTop = window.scrollY < window.innerHeight - 50; if (isTop !== this.state.isTop) { this.setState({ isTop }) } });}<NavItem className={this.state.isTop ? 'hide' : 'show fadeIn'}> <NavLink className="active" href="/">Home</NavLink></NavItem><NavItem className={this.state.isTop ? 'hide' : 'show fadeIn'}> <NavLink href="/option">Option</NavLink></NavItem><NavItem className={this.state.isTop ? 'hide' : 'show fadeIn'}> <NavLink href="/option2">Option 2</NavLink></NavItem>
為移動/小屏幕設備禁用 addEventListener
牛魔王的故事
2021-06-28 13:47:01