I have an ion-scroll component. I\'m trying to execute some code during scrolling. In Ionic 1 this was possible using the on-scroll attribute and passing a function.
You can use the addScrollEventListener
method of the Scroll component, like so:
this.scroll.addScrollEventListener((event) => {
console.log(event);
});
Your HTML:
<ion-header>
<ion-navbar>
<ion-title>Title</ion-title>
</ion-navbar>
</ion-header>
<ion-content class="no-scroll">
<ion-scroll></ion-scroll>
</ion-content>
Your Typescript:
import {Component, ViewChild} from '@angular/core';
import {Scroll} from 'ionic-angular';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
@ViewChild(Scroll) scroll: Scroll;
constructor() {}
ngAfterViewInit() {
this.scroll.addScrollEventListener(this.onScroll);
}
onScroll(event) {
console.log(event);
}
}
I found this solution from here: https://forum.ionicframework.com/t/ionic-2-rc4-addscrolllistener/73145/16?u=kamleshappster
this.content.ionScroll.subscribe(($event) => {
this.scrollAmount = $event.scrollTop;
});
I found a solution here: “On-scroll” not working in
Using the "addScrollEventListener"
inside "ngAfterViewChecked"
.