我的jQuery平滑滚动在以下情况下工作
<a href="#services">Services</a>
但是我想要平滑滚动时
<a href="http://website.com/#services">Services</a>
此标记。这可能吗?
我正在使用的jQuery
$('.nav a').click(function(){
$('html, body').animate({
scrollTop: $( $.attr(this, 'href') ).offset().top
}, 500);
return false;
});
您可以使用
substr()从href
中提取目标字符串:
$('.nav a').click(function (e) {
var linkHref = $(this).attr("href");
var idElement = linkHref.substr(linkHref.indexOf("#"));
$('html, body').animate({
scrollTop: $(idElement).offset().top
}, 1000);
return false;
});
现场示例