added scrollstop plugin...

Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
Alex A. Naanou 2013-02-13 02:13:18 +04:00
parent 6b5d02984f
commit f724931a7e
2 changed files with 66 additions and 3 deletions

58
ext-lib/jquery.scrollstop.js Executable file
View File

@ -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);

View File

@ -53,6 +53,7 @@
<script src="ext-lib/jquery.js"></script> <script src="ext-lib/jquery.js"></script>
<script src="ext-lib/jquery.scrollto.js"></script> <script src="ext-lib/jquery.scrollto.js"></script>
<script src="ext-lib/jquery.scrollstop.js"></script>
<script src="lib/jli.js"></script> <script src="lib/jli.js"></script>
@ -115,13 +116,16 @@ $(document).ready(function(){
var v = $('.viewer') var v = $('.viewer')
var TIMEOUT = 200 var TIMEOUT = 200
window.touching = false window.touching = false
window.scrolling = false
window.t = null window.t = null
setInterval(function(){log('---')}, 1000)
setInterval(function(){clear_log()}, 100000)
$('.viewer') $('.viewer')
.on('scrollstop', function(evt){
log('scrollstop...')
setCurrentPage()
})
/*
.on('scroll', function(evt){ .on('scroll', function(evt){
if(t != null){ if(t != null){
clearTimeout(t) clearTimeout(t)
@ -147,6 +151,7 @@ $(document).ready(function(){
// .ScrollTo does notwork... // .ScrollTo does notwork...
setCurrentPage() setCurrentPage()
}) })
*/