私はちょうど上にスクロールしたいです。コントローラからAngularJSのスクロールが機能しない
私はこれを試してみました:
$ window.scrollToは(0、0);
これはうまくいかず、どちらもwindow.scrollTo(0,0)を実行しませんでした。それから私は試しました:
$ location.hash( 'top'); //ビューでの使用
$ anchorScroll();
これも機能しませんでした。 私はスクロールのためのいくつかのカスタム角度モジュールを見てきましたが、とにかく簡単なものにもっと多くのコードを使用するのは本当に好きではありません。おそらくコントローラ/ビューに何か問題がありますか?ここで
は私のコントローラです:
.controller('PageCtrl', function ($scope, $stateParams, $window, $http, $ionicLoading, $ionicPopup, $timeout, $anchorScroll, $rootScope, $location, $compile) {
var controller = this;
$rootScope.$on('$stateChangeStart',
function (event, toState, toParams, fromState, fromParams, options) {
if (toState.name == 'app.page') {
if(fromState.name != 'app.page2')
controller.init();
}
});
this.init = function() {
$ionicLoading.show({
content: 'Logging in',
animation: 'fade-in',
showBackdrop: true,
maxWidth: 200,
showDelay: 1
});
$window.scrollTo(0, 0); //should it be here?
window.scrollTo(0, 0); //not working at all??
.....
}
......
は、テンプレート:
<style>
...
</style>
<ion-view view-title="something" ng-init="pgctrl.init()">
<ion-nav-buttons side="right">
<button class="button button-calm" ng-click="pgctrl.init()">
New
</button>
</ion-nav-buttons>
<ion-content class="has-header" padding="true">
...
</ion-content>
</ion-view>
の.configで
App.js:
.state('app.page', {
url: '/page',
views: {
'menuContent': {
templateUrl: 'templates/page.html',
controller: 'PageCtrl as pgctrl'
}
}
})
ウィンドウのスクロールイベントに 'stateChangeSuccess'を使用すると、遷移が完了したときに起動されるようになりますか? – anpsmn