Smooth scrolling für relative Links

$('a[href^="#"]').on('click', function(e){
    var href = $(this).attr('href');
    $('html, body').animate({
        scrollTop:$(href).offset().top - 69},900);
    e.preventDefault();
});

 

Für neuere JQuery-Versionen muß das Rautenzeichen im regulären Ausdruck in Anführungszeichen gesetzt werden, damit es nicht als Selektor gewertet wird.

Ansonsten wird folgender Fehler ausgegeben: Syntax error, unrecognized expression: a[href^=#]

Mit CSS geht aber auch folgendes:

 

HTML {

   scroll-behavior: smooth;

}

 

 

Mehr Infos