Skip to content

Commit

Permalink
smoothScrolling option can now take a function.
Browse files Browse the repository at this point in the history
  • Loading branch information
dawnerd committed May 19, 2014
1 parent 1f5bcbd commit 6cffab1
Showing 1 changed file with 9 additions and 10 deletions.
19 changes: 9 additions & 10 deletions lib/toc.js
Expand Up @@ -9,11 +9,11 @@ $.fn.toc = function(options) {
var activeClassName = opts.prefix+'-active';

var scrollTo = function(e, callback) {
if (opts.smoothScrolling && typeof opts.scrollTo === 'function') {
if (opts.smoothScrolling && typeof opts.smoothScrolling === 'function') {
e.preventDefault();
var elScrollTo = $(e.target).attr('href');

opts.scrollTo(elScrollTo, opts, callback);
opts.smoothScrolling(elScrollTo, opts, callback);
}
$('li', self).removeClass(activeClassName);
$(e.target).parent().addClass(activeClassName);
Expand Down Expand Up @@ -85,7 +85,13 @@ jQuery.fn.toc.defaults = {
container: 'body',
listType: '<ul/>',
selectors: 'h1,h2,h3',
smoothScrolling: true,
smoothScrolling: function(target, options, callback) {
$(target).smoothScroller({
offset: options.scrollToOffset
}).on('smoothScrollerComplete', function() {
callback();
});
},
scrollToOffset: 0,
prefix: 'toc',
onHighlight: function() {},
Expand All @@ -99,13 +105,6 @@ jQuery.fn.toc.defaults = {
},
itemClass: function(i, heading, $heading, prefix) {
return prefix + '-' + $heading[0].tagName.toLowerCase();
},
scrollTo: function(target, options, callback) {
$(target).smoothScroller({
offset: options.scrollToOffset
}).on('smoothScrollerComplete', function() {
callback();
});
}

};
Expand Down

0 comments on commit 6cffab1

Please sign in to comment.