В статье "Make Internal Links Scroll Smoothly with JavaScript" подробно разбирается как на JavaScript можно реализовать эффект плавной прокрутки (а не мгновенного скачка) при переходе по внутренней ссылке (см. пример).