12345678910111213141516171819202122232425262728293031323334353637 |
- var peakAnticipation = 200;
- Mixins.InfiniteScrolling = BlazeComponent.extendComponent({
- onCreated: function() {
- this._nextPeak = Infinity;
- },
- setNextPeak: function(v) {
- this._nextPeak = v;
- },
- getNextPeak: function() {
- return this._nextPeak;
- },
- resetNextPeak: function() {
- this._nextPeak = Infinity;
- },
- // To be overwritten by consumers of this mixin
- reachNextPeak: function() {
- },
- events: function() {
- return [{
- scroll: function(evt) {
- var domElement = evt.currentTarget;
- var altitude = domElement.scrollTop + domElement.offsetHeight;
- altitude += peakAnticipation;
- if (altitude >= this.callFirstWith(null, 'getNextPeak')) {
- this.callFirstWith(null, 'reachNextPeak');
- }
- }
- }];
- }
- });
|