[英]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.