问题
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.
回答1:
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.
来源:https://stackoverflow.com/questions/7506538/scrollto-with-easing-and-a-callback-function