トップにコードのスクロールの以下の部分の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