2011-05-11 105 views
3

由於某些奇怪的原因,當我點擊A標籤以轉到ID時,我的標題全部搞砸了。那麼有沒有辦法使用jQuery來做到這一點,比如Click(),Goto ID?jQuery onClick GoTo ID或類別

<a href="#allreviewstop">Read Reviews (1)</a> 
<div style="height:1500px;"> Really Long Stuff</div> 
<div id="allreviewstop"> My Reviews go down here</div> 

這頁我處理Click Here

+0

該頁面上的錨點以及指向它們的鏈接在哪裏? – 2011-05-11 14:47:47

+0

在產品標題下面顯示「閱讀評論」。然後進入右下角的評論。 – ToddN 2011-05-11 15:00:45

回答

2
$("div").click(function() { 
    window.location.hash = "#"+$(this).attr("id"); 
} 

是你以後在做什麼?

我不記得你是否需要#或不。如果不起作用,請嘗試。

+0

儘管如此,你可能會更喜歡這個:http://beski.wordpress.com/2009/04/21/scroll-effect-with-local-anchors-jquery/ – 2011-05-11 14:42:33

+0

嘗試了上面的文章,似乎做了這個伎倆 – ToddN 2011-05-11 15:15:19

2

嘗試了jQuery插件ScrollTo -

還要檢查demo

$(function(){ 
    $("#goTop").click(function(){ 
     $.scrollTo($("#nav"), { duration: 0}); 
    }); 
}); 
0

在我的經驗,window.location.hash解決方案僅適用一次。如果你不想使用的插件,你可以試試這個:

var navigationFn = { 
    goToSection: function(id) { 
     $('html, body').animate({ 
      scrollTop: $(id).offset().top 
     }, 0); 
    } 
} 

,然後調用它像這樣(其中someID是你想要的元素的滾動ID來):

navigationFn.goToSection('#someID'); 

有了這個,你也可以改變動畫的速度(我把它的速度設置爲0),以便它是即時的,但是你可以將值傳遞給函數,以便代碼可以重用。