Skip to content

Instantly share code, notes, and snippets.

@yuliyang
Created March 7, 2023 16:32
Show Gist options
  • Save yuliyang/be5e40e872a55e197e343bed310f3389 to your computer and use it in GitHub Desktop.
Save yuliyang/be5e40e872a55e197e343bed310f3389 to your computer and use it in GitHub Desktop.
[ jQuery ] Scroll to anchor link and offset based on header height
(function ($) {
$("a[href*=\\#]:not([href=\\#])").click(function () {
if (
location.pathname.replace(/^\//, "") ==
this.pathname.replace(/^\//, "") ||
location.hostname == this.hostname
) {
var target = $(this.hash),
headerHeight = $("header#site-header").height() + 20;
target = target.length ? target : $("[name=" + this.hash.slice(1) + "]");
if (target.length) {
$("html,body").animate(
{
scrollTop: target.offset().top - headerHeight,
},
500
);
return false;
}
}
});
})(jQuery);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment