2011-04-21 90 views
2

如何在點擊鏈接時在鏈接中的#後獲得使用jQuery獲取錨值

$(".myLink").click(function(){ 
    ??? 
} 

<a href="myPage.php?a=asdasdasd#value" class="myLink">link</a> 
+0

檢查這個http://stackoverflow.com/questions/872217/jquery-how-to-extract-value-from-href-tag – 2011-04-21 20:02:23

+0

我認爲這是略有不同,我大概可以得到$ _GET [ 'page'] ... – santa 2011-04-21 20:08:49

+0

接受答案? – js1568 2011-05-04 18:15:34

回答

7
$('a.myLink').click(function() { 
    alert(this.hash); 
    return false; 
}); 
+0

+1爲'return false;'沒有它的頁面導航,所以誰在乎javascript ... – 2011-04-21 20:09:54

+0

這個答案需要從@ ezmilhouse的'split'('#')' – brasofilo 2012-09-20 11:17:19

0
var href = $(this).attr("href"); 
var hash = href.indexOf("#") > 0 
    ? href.substring(href.indexOf("#") + 1) 
    : ""; 
1
$(".myLink").click(function(){ 
    var link=$(".myLink").attr('href'); 
    pos=link.indexOf("#", 0); 
    value=link.substring(pos,link.length); 
} 
4
$(".myLink").click(function(evt){ 
    var arr = $(this).attr('href').split('#'); 
    alert(arr[1]); 
    evt.preventDefault(); 
}); 
2

在瀏覽器支持HTML5,你可以使用this.hash然後採取.substring(1)從該字符串中刪除散列本身。

This page暗示支持是非常普遍的,儘管它的正式規範是相當新近的。