私のHTMLは次のようになりました:
<div id="main" layout="column" flex>
<md-toolbar></md-toolbar>
<md-content></md-toolbar>
</div>
をターゲットにして<div>
、JavaScript を使用して一番上までスクロールしようとしました。
document.getElementById('main').scrollTop = 0;
<div id="main">
しかし、フルページの Web アプリケーションであるため、のscrollTop
値が 0 に等しかったため、これは機能しません。
id
属性を<md-content>
要素に移動しました:
<div layout="column" flex>
<md-toolbar></md-toolbar>
<md-content id="main"></md-toolbar>
</div>
そして、私のコントローラーでは、「$window」サービスを注入して「document」オブジェクトにフックを取得し、より適切に要素にフックを取得しました。
angular
.module('app')
.controller('Controller', Controller);
Controller.$inject = ['$window', ...];
function Controller($window, ...) {
var vm = this;
vm.scrollToTop = scrollToTop;
...
function scrollToTop(elementId) {
$window.document.getElementById(elementId).scrollTop = 0;
}
...
}