2012-05-25 80 views
0

好的這裏是我目前面臨的問題我如何才能讓jquery在錨鏈接有名稱或ID時平滑滾動到錨鏈接。Jquery External Page Smooth Smooth Scroll

<a name="scrollhere"> Smooth Scroll here on page load </a> 
<a id="scrollhere"> Smooth Scroll here on page load </a> 

所以不管錨鏈接說什麼,它應該平滑滾動一次頁面加載。 這是一個傢伙給我的代碼。但唯一的問題是這樣的代碼只如果這是secnario

<a class="scrollhere"> Smooth Scroll here on page load </a> 

如果錨鏈接有一個類的,我想的平滑滾動去的代碼只能工作。但我希望它是一個名字和或一個ID。

$(window).bind("load", function() { 
     var urlHash = window.location.href.split("#")[1]; 
     $('html,body').animate({scrollTop:$('.'+urlHash).offset().top}, 4000); 
}); 

告訴我怎樣可以改變這個代碼做我想做的事情

回答

0

尋找一個id

scrollTop:$('#'+urlHash); 

尋找一個名字:

scrollTop:$('[name='+urlHash+']'); 
1

您可以搜索每個想要匹配的區域並返回第一個匹配項,如下所示:

$(window).bind("load", function() { 
    var urlHash = window.location.href.split("#")[1]; 
    $('html,body').animate({scrollTop:$('.'+urlHash+', #'+urlHash+', [name='+urlHash+']').first().offset().top}, 4000); 
});