Animated smooth scrolling effect for one-page website

Every one-page website needs an animated smooth scrolling effect, and this script will rock your site.

April 21, 2016

Every one-page website needs an animated smooth scrolling effect, and this script will rock your site. The script hijacks all # links and makes them scroll nicely to target id.

<script>
$(function() {
  $('a[href*="#"]:not([href="#"])').click(function() {
    if (location.pathname.replace(/^//,'') == this.pathname.replace(/^//,'') &amp;&amp; location.hostname == this.hostname) {
      var target = $(this.hash);
      target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
      if (target.length) {
        $('html, body').animate({
          scrollTop: target.offset().top
        }, 1000);
        return false;
      }
    }
  });
});
</script>

I didn’t make this script, but I hope to keep it safe for me and all you.

References