summaryrefslogtreecommitdiff
path: root/tree/public/assets/js/vendor/view/ScrollableView.js
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2016-11-28 18:11:12 -0500
committerJules Laplace <jules@okfoc.us>2016-11-28 18:11:12 -0500
commit2860b0ceae8e08704996b3397fb8b962ca60ab95 (patch)
treed2f868290adbfd6914aa5f139c4fcc5323a1dc7f /tree/public/assets/js/vendor/view/ScrollableView.js
parent0237b32f73b344deba694cd04fd61a52355ab33d (diff)
tree init
Diffstat (limited to 'tree/public/assets/js/vendor/view/ScrollableView.js')
-rw-r--r--tree/public/assets/js/vendor/view/ScrollableView.js31
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