diff options
Diffstat (limited to 'StoneIsland/platforms/android/assets/www/js/lib/view/Scrollable.js')
| -rwxr-xr-x | StoneIsland/platforms/android/assets/www/js/lib/view/Scrollable.js | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/view/Scrollable.js b/StoneIsland/platforms/android/assets/www/js/lib/view/Scrollable.js new file mode 100755 index 00000000..7f90929a --- /dev/null +++ b/StoneIsland/platforms/android/assets/www/js/lib/view/Scrollable.js @@ -0,0 +1,44 @@ +var ScrollableView = View.extend({ + + events: { + "load img": "deferRefresh", + }, + + deferScrollToTop: function(){ + this.scrollPosition = 0 + setTimeout(this.scrollToTop.bind(this), 0) + }, + + scrollPosition: 0, + + resetScroll: function(){ + this.scrollPosition = 0 + }, + + saveScroll: function(){ + this.scrollPosition = this.scroller.y + }, + + restoreScroll: function(){ + setTimeout(function(){ + this.scroller.scrollTo(0, this.scrollPosition) + }.bind(this), 0) + }, + + refreshScroller: function(){ + this.scroller.refresh() + clearTimeout( this.scrollerRefreshTimeout ) + }, + + scrollerRefreshTimeout: null, + deferRefresh: function(){ + clearTimeout( this.scrollerRefreshTimeout ) + this.scrollerRefreshTimeout = setTimeout(this.refreshScroller.bind(this)) + }, + + scrollToTop: function(){ + this.scroller.refresh() + this.scroller.scrollTo(0, 0) + }, + +})
\ No newline at end of file |
