Skip to content

Instantly share code, notes, and snippets.

@HoundstoothSTL
Created May 3, 2013 15:43
Show Gist options
  • Star 66 You must be signed in to star a gist
  • Fork 8 You must be signed in to fork a gist
  • Save HoundstoothSTL/5510082 to your computer and use it in GitHub Desktop.
Save HoundstoothSTL/5510082 to your computer and use it in GitHub Desktop.
Anchor scroll with fixed header offset
(function($) {
$('a[href*=#]:not([href=#])').click(function()
{
if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'')
|| location.hostname == this.hostname)
{
var target = $(this.hash),
headerHeight = $(".primary-header").height() + 5; // Get fixed header height
target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
if (target.length)
{
$('html,body').animate({
scrollTop: target.offset().top - headerHeight
}, 500);
return false;
}
}
});
})(jQuery);
@theYogam
Copy link

theYogam commented Mar 1, 2021

Thank you,
But you could simply replace target = target.length ? target : $('[name=' + this.hash.slice(1) +']'); by target = $(this).attr('href');

Anyway, it works for me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment