diff --git a/ext-lib/jquery.scrollstop.js b/ext-lib/jquery.scrollstop.js new file mode 100755 index 0000000..4884869 --- /dev/null +++ b/ext-lib/jquery.scrollstop.js @@ -0,0 +1,58 @@ +(function($) { + var special = $.event.special, + uid1 = 'D' + (+new Date()), + uid2 = 'D' + (+new Date() + 1); + + special.scrollstart = { + setup: function() { + var timer, + handler = function(evt) { + var _self = this, + _args = arguments; + + if (timer) { + clearTimeout(timer); + } else { + evt.type = 'scrollstart'; + $.event.handle.apply(_self, _args); + } + + timer = setTimeout(function() { + timer = null; + }, special.scrollstop.latency); + }; + + $(this).bind('scroll', handler).data(uid1, handler); + }, + teardown: function() { + $(this).unbind('scroll', $(this).data(uid1)); + } + }; + + special.scrollstop = { + latency: 250, + setup: function() { + var timer, + handler = function(evt) { + var _self = this, + _args = arguments; + + if (timer) { + clearTimeout(timer); + } + + timer = setTimeout(function() { + timer = null; + evt.type = 'scrollstop'; + $.event.handle.apply(_self, _args); + }, special.scrollstop.latency); + }; + + $(this).bind('scroll', handler).data(uid2, handler); + }, + teardown: function() { + $(this).unbind('scroll', $(this).data(uid2)); + } + }; + +})(jQuery); diff --git a/layout.html b/layout.html index 46740b8..4f3fce9 100755 --- a/layout.html +++ b/layout.html @@ -53,6 +53,7 @@ + @@ -115,13 +116,16 @@ $(document).ready(function(){ var v = $('.viewer') var TIMEOUT = 200 window.touching = false - window.scrolling = false window.t = null - setInterval(function(){log('---')}, 1000) - setInterval(function(){clear_log()}, 100000) $('.viewer') + .on('scrollstop', function(evt){ + log('scrollstop...') + setCurrentPage() + }) + + /* .on('scroll', function(evt){ if(t != null){ clearTimeout(t) @@ -147,6 +151,7 @@ $(document).ready(function(){ // .ScrollTo does notwork... setCurrentPage() }) + */