Jquery 在调用javascript函数之前更改hashtag
我有一个简单的html链接:Jquery 在调用javascript函数之前更改hashtag,jquery,html,hashtag,Jquery,Html,Hashtag,我有一个简单的html链接: 当前URL为http://www.example.com/whatever.html#info 我有一个简单的jQuery代码: $('a').click(function(){ alert(window.location.hash); }); 现在,当我点击链接时,它会向我显示旧的hashtag(info)。但是我想,当我点击链接时,它应该会显示新的标签(关于) 在调用jQuery代码之前,有没有一种简单的方法来更改hashtag的值 注一:这只是我的目标
当前URL为
http://www.example.com/whatever.html#info
我有一个简单的jQuery代码:
$('a').click(function(){
alert(window.location.hash);
});
现在,当我点击链接时,它会向我显示旧的hashtag(info)。但是我想,当我点击链接时,它应该会显示新的标签(关于)
在调用jQuery代码之前,有没有一种简单的方法来更改hashtag的值
注一:这只是我的目标的简化。我知道这毫无意义,但我需要它。注二:由于我雇主的代理设置,我无法为您提供JSFIDLE浏览器执行导航后,您可以调用
setTimeout
在稍后的事件循环中运行代码:
setTimeout(function() {
...
}, 0);
尝试使用$(this.attr('href')
获取链接标签的href
$('a').click(function(){
alert($(this).attr('href'));
});
和$(this.attr('href')。子字符串(1)
应返回您的关于,而不返回。
演示:如果我理解正确,您希望更改a
标记中的文本。您可以这样做:
$('a').click(function(){
$(this).attr('href','#about');
alert(window.location.hash);
});
这样,您可以将href
从#info
更改为#about
。
希望这就是你想要的