scrollTo with easing and a callback function

11,477

There is no forth parameter, but the third parameter (settings) accepts an onAfter callback

$.scrollTo( '#my_anchor', 1200, {easing:'easeInOutExpo', onAfter: function() { }});

from the source code on settings:

 * @param {Object,Function} settings Optional set of settings or the onAfter callback.
 *   @option {String} axis Which axis must be scrolled, use 'x', 'y', 'xy' or 'yx'.
 *   @option {Number} duration The OVERALL length of the animation.
 *   @option {String} easing The easing method for the animation.
 *   @option {Boolean} margin If true, the margin of the target element will be deducted from the final position.
 *   @option {Object, Number} offset Add/deduct from the end position. One number for both axes or { top:x, left:y }.
 *   @option {Object, Number} over Add/deduct the height/width multiplied by 'over', can be { top:x, left:y } when using both axes.
 *   @option {Boolean} queue If true, and both axis are given, the 2nd axis will only be animated after the first one ends.
 *   @option {Function} onAfter Function to be called after the scrolling ends.
 *   @option {Function} onAfterFirst If queuing is activated, this function will be called after the first scrolling ends.
Share:
11,477
Mythical Fish
Author by

Mythical Fish

A creative, seriously full-stack React & Rails developer

Updated on September 07, 2022

Comments

  • Mythical Fish
    Mythical Fish over 1 year

    Here is my code thus far:

        $('.my_button').click(function() {
    
            $.scrollTo( '#my_anchor', 1200, {easing:'easeInOutExpo'}, function() {          
    
                // function not working here
    
            });
    
        });
    

    The callback function worked previously, but since I changed to the scrollTo method with easing, it doesn't any more!

    Just to make it clear I only need to know how to get my callback function working again, everything else is fine.