1234567891011121314151617181920212223242526272829303132333435 |
- var Tween = require('./Tween');
- var defaults = require('./defaults');
- var noop = require('./noop');
- var isNum = require('./isNum');
- var $offset = require('./$offset');
- exports = function(target, options) {
- options = options || {};
- defaults(options, defOpts);
- if (!isNum(target)) target = $offset(target).top;
- new Tween({
- y: window.pageYOffset
- })
- .on('update', function(target) {
- window.scroll(0, target.y);
- })
- .on('end', function() {
- options.callback();
- })
- .to(
- {
- y: target - options.tolerance
- },
- options.duration,
- options.easing
- )
- .play();
- };
- var defOpts = {
- tolerance: 0,
- duration: 800,
- easing: 'outQuart',
- callback: noop
- };
- module.exports = exports;
|