jQuery.fn.anchorAnimate = function(settings) {

 	settings = jQuery.extend({
		speed : 2000,
                bind : true
	}, settings);	
	
	return this.each(function(){
		var caller = this
		$(caller).click(function (event) {	
			event.preventDefault()
			var locationHref = window.location.href
			var elementClick = $(caller).attr("href")
			
			var destination = $(elementClick).offset().top;
			$("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, settings.speed, function() {
				window.location.hash = elementClick
			});
		  	return false;
		})
	})
}

$(document).ready(function() {
    $("a").filter(function(i) {
        return $(this).attr('href') && ($(this).attr('href').indexOf('#') != -1) && ($(this).attr('pathname') == location.pathname);
    }).anchorAnimate();

    if (window.location.hash) {
        var destination = $(window.location.hash).offset().top;
        $("html").scrollTop(0);
	$("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, 2000);
    }
});


