From 2860b0ceae8e08704996b3397fb8b962ca60ab95 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Mon, 28 Nov 2016 18:11:12 -0500 Subject: tree init --- .../public/assets/js/vendor/view/ScrollableView.js | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tree/public/assets/js/vendor/view/ScrollableView.js (limited to 'tree/public/assets/js/vendor/view/ScrollableView.js') 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 -- cgit v1.2.3-70-g09d2