2013-06-03 20 views
1

我有一個簡單的html鏈接:<a href="#about">
當前URL是http://www.example.com/whatever.html#info
我有一個簡單的jQuery代碼:在調用javascript函數之前更改hashtag

$('a').click(function(){ 
    alert(window.location.hash); 
}); 

現在,當我點擊鏈接,它顯示我的老井號標籤(信息)。但我想,當我點擊鏈接時,它應該顯示我新的hashtag(約)。

在我調用jQuery代碼之前,有沒有簡單的方法來改變hashtag的值?

注意I:這只是我的目標的簡化。我知道這沒有任何意義,但我需要它。
注二:因爲我的僱主的代理服務器設置的,我不能爲您提供服務的jsfiddle

回答

2

嘗試。

$('a').click(function(){ 
    alert($(this).attr('href')); 
}); 

$(this).attr('href').substring(1)應該回到你about沒有#

DEMO:http://jsfiddle.net/nhPn5/

+0

酷一,謝謝! –

0

您可以撥打setTimeout在事件循環的後期蜱運行代碼,瀏覽器後進行導航:使用$(this).attr('href')得到link標籤的href

setTimeout(function() { 
    ... 
}, 0); 
0

如果我理解你的權利,你想改變在a標籤的文本。你可以這樣做:

$('a').click(function(){ 
    $(this).attr('href','#about'); 
    alert(window.location.hash); 
}); 

這種方式,您將改變#infohref#about。 希望這是你期待的。

相關問題