2010-07-19 81 views
0

我有一個鏈接當我點擊鏈接時,我的網站一直向上滾動?

<a href="#">Text</a> 

當我點擊此鏈接我的網頁送花兒給人向上滾動到頂部。我如何管理它,當我clik這個鏈接我的頁面不滾動到頂部。

Javascript?什麼

謝謝

+0

什麼鏈接?我看不到任何鏈接:) – rfunduk 2010-07-19 19:54:24

+2

我想問題是爲什麼你只有一個哈希鏈接?它的行爲是正確的,所以問題是你想用這個鏈接完成什麼。 – 2010-07-19 20:02:55

回答

1

你可能要張貼,做這樣的鏈接的一個例子。我的猜測是,這是因爲你沒有爲鏈接設置一個href,或者你用「#someId」結束了鏈接href。它不是滾動到頁面頂部,而是刷新頁面。

頂部鏈接的例子:

<a href="#header">Some Link</a> 

<a href="#">Somewhere</a> <!-- will refresh and you end up at the top --> 

編輯 啊......現在,你所提供的鏈接...它的哈希#這就是問題所在。

爲了避免發生這種情況(我猜你想在鏈接上做一些Javascript,並試圖讓它做點什麼..),那麼你需要在你的javascript中使用return false;。這將從鏈接返回false,並且不會遵循它。

+0

這不是100%正確,頁面不刷新。 – 2010-07-19 20:00:25

+0

夠正確。但是,它或多或少重新加載頁面。或者,也許...重新啓動頁面...通過轉到頂部。對大多數用戶來說,這是一回事。 – Armstrongest 2010-07-19 20:02:28

+0

嚴重的是,沒有*或多或少的重新加載*。請求被髮送到服務器或不。不是這樣。我們不是這裏的用戶,我們是開發人員,我們必須保持技術上的正確;) – 2010-07-19 20:07:19

0
<body> 
    <h1 id="top">First Headline</h1> 

    <!-- your document here--> 
    <a href="#top">go to Top</a> 

</body> 

使用Javascript,您可以添加一些平滑度,如慢慢向上滾動。 HTML Links

+0

我不會去頂尖的先生。 – Giffary 2010-07-19 19:57:26

+0

對不起,這似乎身體不起作用。嘗試

或類似的東西。這應該工作... – gearsdigital 2010-07-19 20:14:07

+0

看到上面的更新。 – gearsdigital 2010-07-19 20:21:26

0

這是因爲你只有散列#作爲「URL」。它使瀏覽器跳轉到頁面的頂部(通常,如果指定了它,它將跳轉到具有相應ID的元素)。

但是,如果你不使用它,這種鏈接的目的是什麼?

0

[relative] URL #被瀏覽器視爲頁面的頂部。請更改鏈接的href屬性以引用其他資源,或者添加阻止默認操作的click事件處理程序。更好的是,如果你打算它是一個觸發click事件的按鈕,請將<a>標記替換爲<button>,這在語義上更正確。

5

你可以添加一些JavaScript來拒絕默認行爲。

function myClickHandler(e) { 

    // your code here 
    // ... 

    // new code 
    if(e.preventDefault){ //firefox,chrome 
     e.preventDefault(); 
    } 
    else { // ie 
     return false; 
    } 
} 

如果你提供一些更多的細節/示例代碼,我們可以給你一個更具體的答案。

3

不知道你正在嘗試做的,但也許你所想的:

<a href="JavaScript:void(0);" >Text</a> 

那會什麼都不做。

相關問題