也许这是新手的问题,但我真的很困惑。我有代码应该在页面上导航我。当我点击任何字母时,我有“ABC”导航部分,页面滚动到字母部分。当我点击另一封信时,页面滚动到顶部。为什么发生?如何防止滚动到顶部后滚动到元素
$('#abc li').on('click',function (e) {
e.preventDefault();
var target = $("#"+$(this).text());
if(target.offset()){
var offs = target.offset().top;
console.log(target, offs);
if ($(this).hasClass('pressed')) {
return false;
} else {
$('.pressed').removeClass('pressed');
$('#needToScroll').animate({scrollTop: offs - 115}, 400);
}
$(this).addClass('pressed');
}
else{
console.log('undef sel');
} });
我有这个here的小提琴。请有人解释我。
使用HTML锚点滚动到列表中的特定位置不是更好吗? – Raibaz
@Raibaz我试过了,效果一样。我认为标记没有问题。 – David