我正在使用这个jQuery选择器:
$("a[href*='#']").click(function(e) {
e.preventDefault();
alert(#valueinhere)
});
选择链接到锚点的链接
我的链接是绝对的和相对的,因此它们看起来像http://www.myweb.com/test#anchor
或类似test#anchor
或类似#anchor
如何从上面的所有链接获取字符串#anchor
?有没有正则表达式或类似的东西?
(由于必要window.location.hash
,我无法使用e.preventDefault()
答案 0 :(得分:4)
为什么你不能从锚元素中获得hash
?
this.hash
它与您是否阻止点击事件的默认行为无关。
$("a[href*='#']").click(function(e) {
e.preventDefault();
alert(this.hash);
});
这是一个有效的example。
答案 1 :(得分:3)
$("a[href*='#']").click(function(e) {
e.preventDefault();
alert( this.href.split("#")[1] )
});
答案 2 :(得分:2)
alert(this.href.split("#")[1]);
答案 3 :(得分:1)
在indexOf
String
$('a[href*="#"]').click(function(e) {
var url = $(this).attr('href');
e.preventDefault();
var newUrl = url.substring(url.indexOf("#"));
alert(newUrl);
});
FIDDLE:http://jsfiddle.net/8SdW2/1/