Javascript/React onClick滚动设置金额向下/向上
我遇到了一个问题,如何使一个按钮一次点击向下滚动,例如每次点击30px 假设我有两个像这样的图标Javascript/React onClick滚动设置金额向下/向上,javascript,reactjs,Javascript,Reactjs,我遇到了一个问题,如何使一个按钮一次点击向下滚动,例如每次点击30px 假设我有两个像这样的图标 <div className="info-container"> <div className="scroll-icon-container" onClick={scrollUp(30)}> <ScrollUpIcon /> </div> <div className="scroll-icon-contai
<div className="info-container">
<div className="scroll-icon-container" onClick={scrollUp(30)}>
<ScrollUpIcon />
</div>
<div className="scroll-icon-container" onClick={scrollDown(30)}>
<ScrollDownIcon />
</div>
<p>"Huge amount of text that will need scrolling"</p>
</div>
到目前为止,我所能找到的只是jquery或如何使其滚动到特定元素,但我正在寻找一个设置量,以像素%或任何有效的方式向下滚动。首先,您可以定义一个变量或状态来保持滚动位置 让我们将状态作为scrollPosition并将其初始化为0 现在在scrollUp功能中:
scrollUp(amountToScroll){
this.setState({
scrollPosition : this.state.scrollPosition + amountToScroll
})
window.scrollTo(0, this.state.scrollPosition)
}
scrollDown(amountToScroll){
this.setState({
scrollPosition : this.state.scrollPosition - amountToScroll
})
window.scrollTo(0, this.state.scrollPosition)
}
现在进入下滚功能:
scrollUp(amountToScroll){
this.setState({
scrollPosition : this.state.scrollPosition + amountToScroll
})
window.scrollTo(0, this.state.scrollPosition)
}
scrollDown(amountToScroll){
this.setState({
scrollPosition : this.state.scrollPosition - amountToScroll
})
window.scrollTo(0, this.state.scrollPosition)
}
首先,您可以定义用于保持滚动位置的变量或状态 让我们将状态作为scrollPosition并将其初始化为0 现在在scrollUp功能中:
scrollUp(amountToScroll){
this.setState({
scrollPosition : this.state.scrollPosition + amountToScroll
})
window.scrollTo(0, this.state.scrollPosition)
}
scrollDown(amountToScroll){
this.setState({
scrollPosition : this.state.scrollPosition - amountToScroll
})
window.scrollTo(0, this.state.scrollPosition)
}
现在进入下滚功能:
scrollUp(amountToScroll){
this.setState({
scrollPosition : this.state.scrollPosition + amountToScroll
})
window.scrollTo(0, this.state.scrollPosition)
}
scrollDown(amountToScroll){
this.setState({
scrollPosition : this.state.scrollPosition - amountToScroll
})
window.scrollTo(0, this.state.scrollPosition)
}
使用window.scrollBy(pixelsToScrollRight,pixelsToScrollDown)
方法
因此,您不必使用scrollUp()
和scrollDown()
方法,而可以使用以下方法:
scroll(number: amountToScroll){
//amount to scroll is negative to scroll up
window.scrollBy(0 , amountToScroll)
}
如果您想查看div中的滚动:使用窗口。滚动方式(pixelsToScrollRight,pixelsToScrollDown)
方法
因此,您不必使用scrollUp()
和scrollDown()
方法,而可以使用以下方法:
scroll(number: amountToScroll){
//amount to scroll is negative to scroll up
window.scrollBy(0 , amountToScroll)
}
如果您想查看div中的滚动:尝试了这个方法,但当我按下它时什么也没发生。而且也没有窗户。让整个网页向下滚动?我只需要这一部分是按在滚动其溢出尝试了这一点,但没有发生什么事,当我按下它。而且也没有窗户。让整个网页向下滚动?我只需要这一部分是按下滚动其溢出