scroll-trigger
Version:
simple scroll trigger function with throttle
27 lines (21 loc) • 683 B
JavaScript
var $ = require('jquery');
var _ = require('underscore');
/**
* Trigger function after scroll
* @param {Number} waitParam - wait for execute again
* @param {Number} toleranceParam - for execute callback
* @param {Function} cb - callback
* @return {Function} cb - callback
*/
module.exports = function scrollTrigger(waitParam, toleranceParam, cb) {
var wait = waitParam || 1000;
var tolerance = toleranceParam || 200;
$(window).scroll(_.throttle(function() {
var body = document.body;
var threshold = body.scrollHeight - window.innerHeight - tolerance;
if($(window).scrollTop() > threshold) {
return cb();
}
}, wait));
};
;