我正在使用此代码了解签名后的url中的内容:
var a = document.URL.split("#")[1];
例如,如果页面的url是
http://example.com/path/to/somewhere/#contentpart
,变量a
将包含contentpart
。但问题是,用户可能会单击指向同一页面但指向另一部分的链接(例如:
<a href="#footer">Go to footer</a>
),如果是,页面将不会重新加载。(只有页面将被导航到其他位置)我的问题是,如何在登录同一页面后检测URL何时更改?
欢迎使用任何javascript/jQuery方法。
最佳答案
我建议,记住你现在的密码:
$(window).on('hashchange', function(e){
var newHash = document.href.split('#')[1];
});
尽管使用起来容易一点:
$(window).on('hashchange', function(e){
var newHash = document.location.hash;
console.log(newHash);
});
JS Fiddle demo。
如果不希望哈希包含
#
字符,请改用:$(window).on('hashchange', function(e){
var newHash = document.location.hash.substring(1);
console.log(newHash);
});
JS Fiddle demo。
关于javascript - 在#号后检测网址更改,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11978360/