下面這段代碼滾動到頂部的Y位置,也接受延遲:陣營scrollTo /獲取元素/組件
const ScrollToTop = React.createClass({
getInitialState: function() {
return {intervalId: 0};
},
scrollStep: function() {
const top = 0;
if (window.pageYOffset === top) {
clearInterval(this.state.intervalId);
}
window.scroll(top, window.pageYOffset - this.props.scrollStepInPx);
},
scrollToTop: function (event) {
event.preventDefault();
const intervalId = setInterval(this.scrollStep, this.props.delayInMs);
this.setState({intervalId: intervalId});
}
});
我怎樣才能實現類似的東西,但用我的主導航?有沒有計算元素偏移量的方法?然後我可以代替頂部通過這個。
你是什麼意思使用您的主要導航? – juancab
@juancab我在我的應用程序中有一個主導航,我想滾動到相應的點擊部分(例如,主頁,關於,聯繫人等)。我已經與** scrollIntoView **一起工作,但其流暢的行爲僅適用於** Firefox **,因此它跳轉而不是滾動。 – Manu