2014-07-14 133 views
0

也許這是新手的問題,但我真的很困惑。我有代碼應該在頁面上導航我。當我點擊任何字母時,我有「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的小提琴。請有人解釋我。

+0

使用HTML錨點滾動到列表中的特定位置不是更好嗎? – Raibaz

+0

@Raibaz我試過了,效果一樣。我認爲標記沒有問題。 – David

回答