如何在每次更改URL时重新加载JQuery?
如何在每次URL更改时调用此函数如何在每次更改URL时重新加载JQuery?,jquery,Jquery,如何在每次URL更改时调用此函数 $(document).ready(function() { console.log("URL change!"); }); 我尝试了类似的方法,但不起作用: $(window).on('hashchange', function(e){ $(document).ready(function() { console.log("URL change!"); }); }); 如果需要从url获取哈希值,可以执行以下操作 $(document)
$(document).ready(function() {
console.log("URL change!");
});
我尝试了类似的方法,但不起作用:
$(window).on('hashchange', function(e){
$(document).ready(function() {
console.log("URL change!");
});
});
如果需要从url获取哈希值,可以执行以下操作
$(document).ready(function(){
var hash = window.location.hash;
//Some condition
if(hash=="foo"){
//hash is foo do something
}else if(hash=="bar"){
//hash is bar do something
}else{
//hash is not foo nor bar : do something
}
console.log(hash);
});
如果需要获取完整的url,请改用window.location.href
$(document).ready(function(){
var url = window.location.href;
console.log(url);
});
现在,如果您想检查hashchange事件,您可以执行以下操作,尽管hashchange是针对jQuery mobile的
$( window ).hashchange(function() {
var hash = location.hash;
console.log(hash);
});
$( window ).hashchange();
如果要跟踪上一个url,可能需要使用cookie
关于您的问题如何在每次我的URL更改时重新加载JQuery?JQuery在每次页面加载时都会重新加载,因此如果您只想从URL中了解哈希值并使用该哈希值执行一些操作,我的第一个示例将完成以下工作:)您需要将“旧”URL保存在cookie中:
$(document).ready(function() {
// read old saved URL
var oldURL = $.cookie("oldURL");
// check for URL change
if (oldURL != window.location.href) {
console.log("URL change!");
}
// save current URL in cookie
$.cookie("oldURL", window.location.href);
});
唯一的问题是,在第一次调用时,cookie是空的,因此URL更改也将在第一次调用时发生。好的,这不是伪就绪处理程序的目的。看起来像是XY问题,因为不管怎样,你的代码都可以工作,所以无论你想做什么,你的问题都在其他地方。我添加了一个示例,这样你就可以了解如何跟踪url,并为你更好地理解它添加了一些条件。检查我的答案:)