diff options
Diffstat (limited to 'tree/public/assets/js/vendor/view/ScrollableView.js')
| -rw-r--r-- | tree/public/assets/js/vendor/view/ScrollableView.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tree/public/assets/js/vendor/view/ScrollableView.js b/tree/public/assets/js/vendor/view/ScrollableView.js new file mode 100644 index 0000000..a01809c --- /dev/null +++ b/tree/public/assets/js/vendor/view/ScrollableView.js @@ -0,0 +1,31 @@ +var ScrollableView = View.extend({ + + events: { + "load img": "deferRefresh", + }, + + deferScrollToTop: function(){ + if (! this.scroller) return + setTimeout(this.scrollToTop.bind(this), 0) + }, + + refreshScroller: function(){ + if (! this.scroller) return + this.scroller.refresh() + clearTimeout( this.scrollerRefreshTimeout ) + }, + + scrollerRefreshTimeout: null, + deferRefresh: function(){ + if (! this.scroller) return + clearTimeout( this.scrollerRefreshTimeout ) + this.scrollerRefreshTimeout = setTimeout(this.refreshScroller.bind(this)) + }, + + scrollToTop: function(){ + if (! this.scroller) return + this.scroller.refresh() + app.collection.scroller.scrollTo(0, 0) + }, + +})
\ No newline at end of file |
