summaryrefslogtreecommitdiff
path: root/studio-susie/public/assets/js/vendor/view/ScrollableView.js
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2016-12-31 06:28:53 +0100
committerJules Laplace <jules@okfoc.us>2016-12-31 06:28:53 +0100
commit9f8674686bead1c8b3c88af102bdbebbba89a2e8 (patch)
treeb6f98ef6d258c9b5381afe0121b8767fd7eb4be5 /studio-susie/public/assets/js/vendor/view/ScrollableView.js
parent1d34c0dffa2ed4c9a11942c356123175baf87240 (diff)
studio susie website
Diffstat (limited to 'studio-susie/public/assets/js/vendor/view/ScrollableView.js')
-rw-r--r--studio-susie/public/assets/js/vendor/view/ScrollableView.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/studio-susie/public/assets/js/vendor/view/ScrollableView.js b/studio-susie/public/assets/js/vendor/view/ScrollableView.js
new file mode 100644
index 0000000..a01809c
--- /dev/null
+++ b/studio-susie/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