簡體   English   中英

當我單擊鏈接時,我的網站總是向上滾動嗎?

[英]My website alway scroll up when i click link?

我有一個鏈接

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

當我單擊此鏈接時,我的頁面始終滾動到頂部。 我如何管理它,當我單擊此鏈接時,我的頁面無法向上滾動到頂部。

Javascript? 或者其他的東西

謝謝

您可以添加一些JavaScript來拒絕默認行為。

function myClickHandler(e) {

    // your code here
    // ...

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

如果您提供更多詳細信息/示例代碼,我們可以為您提供更具體的答案。

不確定您要做什么,但也許您在考慮:

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

那什么也沒做。

您可能想要發布執行此操作的鏈接示例。 我的猜測是,這是因為您沒有為鏈接設置href,或者您以“ #someId”結束了鏈接href

不是滾動到頁面頂部,而是刷新頁面。

頂部鏈接的示例:

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

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

編輯啊...現在您已經提供了鏈接...問題是哈希#

為了避免這種情況的發生(我猜您想在鏈接上做一些Javascript,並且試圖使它做點什么。。)然后您需要return false; 在您的JavaScript中。 這將從鏈接返回false,並且不會關注它。

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

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

</body>

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

這是因為您只有井號#作為“ URL”。 它使瀏覽器跳到頁面頂部(通常,如果您指定了ID,則它將跳到具有相應ID的元素)。

但是,如果不使用此鏈接,其目的是什么?

瀏覽器將[相對] URL #視為頁面頂部。 更改鏈接的href屬性以引用其他資源,或者添加阻止默認操作的click事件處理程序。 更好的是,如果您希望將其用作觸發click事件的按鈕, click<button>替換<a>標記,無論如何在語義上更正確。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM