Cześć, żeby scroll działał Ci po tym jak przeniesie Cię na inną podstronę musisz użyć ciasteczek, do zapamiętania pozycji do której ma przewinąć po przejściu na podstronę.
/** slide after reload **/
$(document).ready(function () {
// Read the cookie and if it's defined scroll to id
var scroll = $.cookie('scroll');
if(scroll){
scrollToID(scroll, 1000);
$.removeCookie('scroll');
}
// Handle event onclick, setting the cookie when the href != #
$('.nav a').click(function (e) {
e.preventDefault();
var id = $(this).data('id');
var href = $(this).attr('href');
if(href === '#'){
scrollToID(id, 1000);
}else{
$.cookie('scroll', id);
window.location.href = href;
}
});
// scrollToID function
function scrollToID(id, speed) {
var offSet = 70;
var obj = $('#' + id);
if(obj.length){
var offs = obj.offset();
var targetOffset = offs.top - offSet;
$('html,body').animate({ scrollTop: targetOffset }, speed);
}
}
W linku dodajesz sobie atrybut data-id. Np. <a href="about.php" data-id="about"></a> Następnie na takiej podstronie dodajesz sobie id do którego ma Cie przenieść czyli np. <section id="about">.
Po kliknięciu w link, przekierowuje Cię na podstronę i zjeżdża do docelowego id odnoszącego się do data-id