簡體   English   中英

使用jQuery在錨鏈接之前添加當前頁面URL

[英]Add Current Page URL Before Anchor Link Using jQuery

我被困在利用一個平台(Nationbuilder)上,該平台會自動在標頭中添加基本標簽。 直到最近,幾十個帶有錨鏈接的頁面最終將用戶引導到主頁。

我需要使用jQuery在#anchor之前添加當前頁面的url。 我能找到的最接近的是以下代碼,但是我不知道如何修改它,因此僅修改以#開頭的href屬性的鏈接:

$("a").attr("href", "http://www.example.com/pageslug")

所以我想:

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

更改為:

<a href="http://www.example.com/pageslug#anchorname"></a>

您可以使用以選擇器開頭的CSS屬性:

而不是選擇"a" ,而是選擇'a[href^="#"]'意思是“帶有以#開頭的href屬性的標簽。

所以像這樣:

$('a[href^="#"]').each(function(i,el){
    el.href = "http://www.example.com/pageslug" + el.hash;
});

(小提琴)

除了本傑明所說的內容,您還需要捕獲每個錨點的當前href,這意味着您需要一個循環。 所以

$('a[href^="#"]').each(function(index, element){
    var $ele = $(element),
        oldHref = $ele.attr('href');
    $ele.attr('href', '//example.com/page'+ oldHref);
});

像這樣嗎

$('a').attr('href', window.location.pathname + this.attr('href'))

暫無
暫無

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

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