2012-01-18 69 views
0

我已經爲什麼不scrollTo滾動到我的錨點?

<!DOCTYPE html> 
<html> 
<head> 

[...] 

<script type="text/javascript" src="jquery-1.7.js"></script> 

<script type="text/javascript" src="prototype.js"></script> 

<script type="text/javascript"> 
function getusto(anchorid) { 
$(anchorid).scrollTo(); 
} 

</script> 

[...] 

</head> 
<body> 

[...] 

<a class="menu_links" href="#" onclick="getusto('welcome');">Welcome</a><br> 
<a class="menu_links" href="#" onclick="getusto('guidelines');">Guidelines</a> 

[...] 

<a name="welcome" id="welcome"></a> blah balhb albha 

[...] 

<a name="guidelines" id="guidelines"></a> blah blahb alhb 

[...] 

</body> 
</html> 

爲什麼點擊歡迎/準則鏈接不滾動到錨?

我想鏈接到特定的id,由於使用jquery-bbq,使得它(據我所知),所以我不能使用哈希/錨正常。

他們讓我使用更多的字符來解釋代碼。怎麼樣,我們玩一幀Pac-Man的:

("< . . . . o . . . . 
        . 
        . 
        . 
        . 
      [Post Your Answer] 
+0

爲什麼不只是'Welcom'? – RobG 2012-01-18 07:06:27

+0

嘿羅布 - 見最新增加。這是jquery-bbq的一個怪癖/折衷,顯然,哈希用於一件事情,所以不是其他的 - 即我不能使用錨點,因爲jquery-bbq使用它來做其他事情。所以,我必須找到一個解決方法 - 首先嚐試'scrollTo()'。 – lakitu 2012-01-18 07:09:15

回答

1

這有可能是瀏覽器執行Element.scrollTo功能,然後下面的鏈接...這需要你的頁面的頂部(因爲href# )。

爲什麼不試試這兩件事情之一,看看會發生什麼:

嘗試return false;onclick:(see fiddle here

<a class="menu_links" href="#" onclick="getusto('welcome'); return false;">Welcome</a> 
<a class="menu_links" href="#" onclick="getusto('guidelines'); return false;">Guidelines</a> 

或者使getusto回報false:(see fiddle here

function getusto(anchorid) { 
    $(anchorid).scrollTo(); 
    return false; 
} 

...並從返回它的值10:

<a class="menu_links" href="#" onclick="return getusto('welcome');">Welcome</a> 
<a class="menu_links" href="#" onclick="return getusto('guidelines');">Guidelines</a> 

做任何的兩點建議應該允許Element.scrollTo生效,而不以下鏈接的原始目標。

+0

'Welcome
Guidelines'沒有工作。我會嘗試另一種方法。 – lakitu 2012-01-18 07:33:36

+0

沒有工作。如果它可以幫助我使用推蛋器在頁面上拋出一些雞蛋= P – lakitu 2012-01-18 07:36:36

+0

我創建了一個小提琴來演示我在說什麼。看看這裏:http://jsfiddle.net/GWLmy/1/。如果你仍然有問題,恐怕你必須提供更多信息。 – 2012-01-18 07:49:47