angular2でのスクロールトップ
私はangular2のWebアプリケーションに取り組んでいますが、以下の点で助けが必要です。 私のページは複数のコンポーネントで構成されています。ユーザーがボタンをクリックしたときに、ページの上部をスクロールさせたいと思います。私は試しました document.body.scrollTop = 0;` ですが、これはChromeでは動作しません。document.documentElement.scrollTop=0;window.scrollTo(0, 0);を試してみましたが、うまくいきません。
15
9
のようにインポートします、
コンストラクタに以下を追加します、
そうすると、このように任意の場所にスクロールを設定することができます、
データバインディングを使って、angularのスクロールの問題を解決しました:
をスタイルとする:
使用するだけ:
app.component.ts内
app.component.html内
そのための指令を書くことを提案します。 使用しているモジュールにインポートしてください。
以下のように使用します。
また、Angularのベストプラクティスに準拠して、プレフィックスをディレクティブに追加することを検討してください。
https://angular.io/guide/styleguide#directive-custom-prefix。
以下のコードを使用してください。 私の場合。
動作していませんが。
作業。 したがって、ブラウザに依存している可能性があります。
htmlコード:
cssコード:
tsコード:
ウィンドウスクロールではなく、自分のスクロールでdivを実行する場合、これは機能します。
GloabalサービスWindowRef:
コンストラクタに追加します。
そして、コードを配置する場合は、次の行を追加するだけです。
もちろん、getElementByTagName、getElementById、getElementByNameなどの他のセレクターを使用することもできます。 ...
この引数をコンストラクターに挿入します:
@ Inject(DOCUMENT)プライベートドキュメント:ドキュメント
。次に、「scrollIntoView」関数を呼び出します。
。 this.document.body.sc rollIntoView({。 ブロック:「開始」、 動作:「スムーズ」。 });。
。いいよ。!! :)。